feat(git-workflow): Add automatic git branch-tag integration
- Implement automatic tag creation when switching to new git branches - Add branch-tag mapping system for seamless context switching - Enable auto-switch of task contexts based on current git branch - Provide isolated task contexts per branch to prevent merge conflicts - Add configuration support for enabling/disabling git workflow features - Fix ES module compatibility issues in git-utils module - Maintain zero migration impact with automatic 'master' tag creation - Support parallel development with branch-specific task contexts The git workflow system automatically detects branch changes and creates corresponding empty task tags, enabling developers to maintain separate task contexts for different features/branches while preventing task-related merge conflicts during collaborative development. Resolves git workflow integration requirements for multi-context development.
This commit is contained in:
@@ -9,6 +9,7 @@ import chalk from 'chalk';
|
||||
import dotenv from 'dotenv';
|
||||
// Import specific config getters needed here
|
||||
import { getLogLevel, getDebugFlag } from './config-manager.js';
|
||||
import * as gitUtils from './utils/git-utils.js';
|
||||
import {
|
||||
COMPLEXITY_REPORT_FILE,
|
||||
LEGACY_COMPLEXITY_REPORT_FILE,
|
||||
@@ -302,8 +303,6 @@ function readJSON(filepath, projectRoot = null, tag = null) {
|
||||
// This needs to run synchronously BEFORE tag resolution
|
||||
if (projectRoot) {
|
||||
try {
|
||||
// Import git utilities synchronously
|
||||
const gitUtils = require('./utils/git-utils.js');
|
||||
// Run git integration synchronously
|
||||
gitUtils.checkAndAutoSwitchGitTagSync(projectRoot, filepath);
|
||||
} catch (error) {
|
||||
@@ -361,8 +360,6 @@ function readJSON(filepath, projectRoot = null, tag = null) {
|
||||
// This needs to run synchronously BEFORE tag resolution
|
||||
if (projectRoot) {
|
||||
try {
|
||||
// Import git utilities synchronously
|
||||
const gitUtils = require('./utils/git-utils.js');
|
||||
// Run git integration synchronously
|
||||
gitUtils.checkAndAutoSwitchGitTagSync(projectRoot, filepath);
|
||||
} catch (error) {
|
||||
|
||||
Reference in New Issue
Block a user