bmall-mcp 1.2.7 → 1.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -142,6 +142,9 @@ src/
142
142
 
143
143
  ## Changelog
144
144
 
145
+ ### v1.2.8 (2026-01-15)
146
+ - ✅ 修复本地分支已存在时创建失败的问题
147
+
145
148
  ### v1.2.7 (2026-01-15)
146
149
  - ✅ 修复 Git remote 地址不一致问题,自动更新 remote URL
147
150
 
package/dist/index.js CHANGED
@@ -9,7 +9,7 @@ import { toolDefinitions } from "./server/tools.js";
9
9
  import { handleToolCall } from "./server/handlers.js";
10
10
  import { initProjectRoot } from "./utils/project.js";
11
11
  // 版本号
12
- const VERSION = "1.2.7";
12
+ const VERSION = "1.2.8";
13
13
  const server = new Server({
14
14
  name: "bmall-mcp",
15
15
  version: VERSION,
@@ -1 +1 @@
1
- {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CA8BpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAQzE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAGjE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAQpE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GACjB,IAAI,CAwBN;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAuBT"}
1
+ {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CA8BpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAQzE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAGjE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAQpE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GACjB,IAAI,CAuCN;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,OAAO,CAuBT"}
package/dist/utils/git.js CHANGED
@@ -78,10 +78,25 @@ export function checkoutOrCreateBranch(repoDir, branchName, baseBranch) {
78
78
  return;
79
79
  }
80
80
  catch (e) {
81
- // 远程分支不存在,继续创建新分支
81
+ // 远程分支不存在,继续
82
+ }
83
+ // 检查本地分支是否存在
84
+ try {
85
+ const localBranches = execSync(`git -C ${repoDir} branch --list ${branchName}`, { encoding: "utf-8" });
86
+ if (localBranches.trim()) {
87
+ // 本地分支存在,直接 checkout
88
+ execSync(`git -C ${repoDir} checkout ${branchName}`, { stdio: "inherit" });
89
+ // 重置到最新的 baseBranch
90
+ execSync(`git -C ${repoDir} reset --hard origin/${baseBranch}`, { stdio: "inherit" });
91
+ log(`检出本地分支并重置: ${branchName}`);
92
+ return;
93
+ }
94
+ }
95
+ catch (e) {
96
+ // 继续创建新分支
82
97
  }
83
98
  // 基于主分支创建新分支
84
- log(`远程分支不存在,基于 ${baseBranch} 创建...`);
99
+ log(`创建新分支,基于 ${baseBranch}...`);
85
100
  try {
86
101
  execSync(`git -C ${repoDir} checkout -B ${baseBranch} origin/${baseBranch}`, { stdio: "inherit" });
87
102
  execSync(`git -C ${repoDir} checkout -b ${branchName}`, { stdio: "inherit" });
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/utils/git.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bmall-mcp",
3
- "version": "1.2.7",
3
+ "version": "1.2.8",
4
4
  "description": "MCP Server for bmall development rules and tools",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
package/src/index.ts CHANGED
@@ -15,7 +15,7 @@ import { handleToolCall } from "./server/handlers.js";
15
15
  import { initProjectRoot } from "./utils/project.js";
16
16
 
17
17
  // 版本号
18
- const VERSION = "1.2.7";
18
+ const VERSION = "1.2.8";
19
19
 
20
20
  const server = new Server(
21
21
  {
package/src/utils/git.ts CHANGED
@@ -93,11 +93,26 @@ export function checkoutOrCreateBranch(
93
93
  log(`检出远程分支: ${branchName}`);
94
94
  return;
95
95
  } catch (e) {
96
- // 远程分支不存在,继续创建新分支
96
+ // 远程分支不存在,继续
97
+ }
98
+
99
+ // 检查本地分支是否存在
100
+ try {
101
+ const localBranches = execSync(`git -C ${repoDir} branch --list ${branchName}`, { encoding: "utf-8" });
102
+ if (localBranches.trim()) {
103
+ // 本地分支存在,直接 checkout
104
+ execSync(`git -C ${repoDir} checkout ${branchName}`, { stdio: "inherit" });
105
+ // 重置到最新的 baseBranch
106
+ execSync(`git -C ${repoDir} reset --hard origin/${baseBranch}`, { stdio: "inherit" });
107
+ log(`检出本地分支并重置: ${branchName}`);
108
+ return;
109
+ }
110
+ } catch (e) {
111
+ // 继续创建新分支
97
112
  }
98
113
 
99
114
  // 基于主分支创建新分支
100
- log(`远程分支不存在,基于 ${baseBranch} 创建...`);
115
+ log(`创建新分支,基于 ${baseBranch}...`);
101
116
  try {
102
117
  execSync(`git -C ${repoDir} checkout -B ${baseBranch} origin/${baseBranch}`, { stdio: "inherit" });
103
118
  execSync(`git -C ${repoDir} checkout -b ${branchName}`, { stdio: "inherit" });