@zjex/git-workflow 0.3.10 → 0.4.1
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/CHANGELOG.md +470 -12
- package/README.md +8 -3
- package/ROADMAP.md +1 -1
- package/dist/index.js +229 -30
- package/docs/.vitepress/config.ts +111 -100
- package/docs/commands/branch.md +33 -12
- package/docs/commands/index.md +38 -33
- package/docs/commands/tag.md +71 -15
- package/docs/commands/update.md +79 -3
- package/docs/guide/api.md +607 -0
- package/docs/guide/contributing.md +441 -0
- package/docs/guide/development.md +295 -0
- package/docs/guide/team-collaboration.md +538 -0
- package/docs/guide/testing.md +461 -0
- package/package.json +3 -3
- package/scripts/generate-changelog-manual.js +135 -0
- package/src/commands/stash.ts +176 -7
- package/src/commands/tag.ts +120 -0
- package/src/index.ts +89 -72
- package/src/update-notifier.ts +1 -1
- package/tests/commands.test.ts +409 -0
- package/tests/stash.test.ts +161 -89
- package/tests/tag.test.ts +236 -0
- package/tests/update-notifier.test.ts +52 -0
- package/CODE_DOCUMENTATION.md +0 -169
- package/TESTING.md +0 -436
|
@@ -1,168 +1,179 @@
|
|
|
1
|
-
import { defineConfig } from
|
|
1
|
+
import { defineConfig } from "vitepress";
|
|
2
2
|
|
|
3
3
|
export default defineConfig({
|
|
4
|
-
title:
|
|
5
|
-
description:
|
|
6
|
-
|
|
4
|
+
title: "Git Workflow",
|
|
5
|
+
description:
|
|
6
|
+
"🚀 极简的 Git 工作流 CLI 工具,让分支管理和版本发布变得轻松愉快",
|
|
7
|
+
|
|
7
8
|
// 基础配置
|
|
8
|
-
base:
|
|
9
|
-
lang:
|
|
10
|
-
|
|
9
|
+
base: "/git-workflow/",
|
|
10
|
+
lang: "zh-CN",
|
|
11
|
+
|
|
11
12
|
// 主题配置
|
|
12
13
|
themeConfig: {
|
|
13
14
|
// Logo
|
|
14
|
-
logo:
|
|
15
|
-
|
|
15
|
+
logo: "/logo.svg",
|
|
16
|
+
|
|
16
17
|
// 导航栏
|
|
17
18
|
nav: [
|
|
18
|
-
{ text:
|
|
19
|
-
{ text:
|
|
20
|
-
{ text:
|
|
21
|
-
{ text:
|
|
22
|
-
{ text: 'GitHub', link: 'https://github.com/iamzjt-front-end/git-workflow' }
|
|
19
|
+
{ text: "首页", link: "/" },
|
|
20
|
+
{ text: "快速开始", link: "/guide/getting-started" },
|
|
21
|
+
{ text: "命令参考", link: "/commands/" },
|
|
22
|
+
{ text: "配置", link: "/config/" },
|
|
23
23
|
],
|
|
24
24
|
|
|
25
25
|
// 侧边栏
|
|
26
26
|
sidebar: {
|
|
27
|
-
|
|
27
|
+
"/guide/": [
|
|
28
28
|
{
|
|
29
|
-
text:
|
|
29
|
+
text: "指南",
|
|
30
30
|
items: [
|
|
31
|
-
{ text:
|
|
32
|
-
{ text:
|
|
33
|
-
{ text:
|
|
34
|
-
{ text:
|
|
35
|
-
{ text:
|
|
36
|
-
]
|
|
31
|
+
{ text: "介绍", link: "/guide/" },
|
|
32
|
+
{ text: "快速开始", link: "/guide/getting-started" },
|
|
33
|
+
{ text: "安装", link: "/guide/installation" },
|
|
34
|
+
{ text: "基础用法", link: "/guide/basic-usage" },
|
|
35
|
+
{ text: "最佳实践", link: "/guide/best-practices" },
|
|
36
|
+
],
|
|
37
37
|
},
|
|
38
38
|
{
|
|
39
|
-
text:
|
|
39
|
+
text: "核心功能",
|
|
40
40
|
items: [
|
|
41
|
-
{ text:
|
|
42
|
-
{ text:
|
|
43
|
-
{ text:
|
|
44
|
-
{ text:
|
|
45
|
-
{ text:
|
|
46
|
-
]
|
|
41
|
+
{ text: "AI 智能提交", link: "/guide/ai-commit" },
|
|
42
|
+
{ text: "分支管理", link: "/guide/branch-management" },
|
|
43
|
+
{ text: "Tag 管理", link: "/guide/tag-management" },
|
|
44
|
+
{ text: "Stash 管理", link: "/guide/stash-management" },
|
|
45
|
+
{ text: "版本发布", link: "/guide/release-management" },
|
|
46
|
+
],
|
|
47
47
|
},
|
|
48
48
|
{
|
|
49
|
-
text:
|
|
50
|
-
items: [
|
|
51
|
-
|
|
52
|
-
{ text: '工作流集成', link: '/guide/workflow-integration' },
|
|
53
|
-
{ text: '自动化脚本', link: '/guide/automation' }
|
|
54
|
-
]
|
|
55
|
-
}
|
|
56
|
-
],
|
|
57
|
-
'/commands/': [
|
|
49
|
+
text: "团队协作",
|
|
50
|
+
items: [{ text: "团队协作指南", link: "/guide/team-collaboration" }],
|
|
51
|
+
},
|
|
58
52
|
{
|
|
59
|
-
text:
|
|
53
|
+
text: "开发与贡献",
|
|
60
54
|
items: [
|
|
61
|
-
{ text:
|
|
62
|
-
{ text:
|
|
63
|
-
{ text:
|
|
64
|
-
{ text:
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
{ text: 'Stash 命令', link: '/commands/stash' },
|
|
68
|
-
{ text: '版本命令', link: '/commands/release' },
|
|
69
|
-
{ text: '配置命令', link: '/commands/config' },
|
|
70
|
-
{ text: '更新命令', link: '/commands/update' },
|
|
71
|
-
{ text: '帮助命令', link: '/commands/help' }
|
|
72
|
-
]
|
|
73
|
-
}
|
|
55
|
+
{ text: "开发指南", link: "/guide/development" },
|
|
56
|
+
{ text: "测试指南", link: "/guide/testing" },
|
|
57
|
+
{ text: "API 文档", link: "/guide/api" },
|
|
58
|
+
{ text: "贡献指南", link: "/guide/contributing" },
|
|
59
|
+
],
|
|
60
|
+
},
|
|
74
61
|
],
|
|
75
|
-
|
|
62
|
+
"/commands/": [
|
|
76
63
|
{
|
|
77
|
-
text:
|
|
64
|
+
text: "命令参考",
|
|
78
65
|
items: [
|
|
79
|
-
{ text:
|
|
80
|
-
{ text:
|
|
81
|
-
{ text:
|
|
82
|
-
{ text:
|
|
83
|
-
{ text:
|
|
84
|
-
{ text:
|
|
85
|
-
|
|
86
|
-
|
|
66
|
+
{ text: "概览", link: "/commands/" },
|
|
67
|
+
{ text: "交互式菜单", link: "/commands/interactive" },
|
|
68
|
+
{ text: "分支命令", link: "/commands/branch" },
|
|
69
|
+
{ text: "提交命令", link: "/commands/commit" },
|
|
70
|
+
{ text: "日志命令", link: "/commands/log" },
|
|
71
|
+
{ text: "Tag 命令", link: "/commands/tag" },
|
|
72
|
+
{ text: "Stash 命令", link: "/commands/stash" },
|
|
73
|
+
{ text: "版本命令", link: "/commands/release" },
|
|
74
|
+
{ text: "配置命令", link: "/commands/config" },
|
|
75
|
+
{ text: "更新命令", link: "/commands/update" },
|
|
76
|
+
{ text: "帮助命令", link: "/commands/help" },
|
|
77
|
+
],
|
|
78
|
+
},
|
|
87
79
|
],
|
|
88
|
-
|
|
80
|
+
"/config/": [
|
|
89
81
|
{
|
|
90
|
-
text:
|
|
82
|
+
text: "配置",
|
|
91
83
|
items: [
|
|
92
|
-
{ text:
|
|
93
|
-
{ text:
|
|
94
|
-
{ text:
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
84
|
+
{ text: "配置概览", link: "/config/" },
|
|
85
|
+
{ text: "配置文件", link: "/config/config-file" },
|
|
86
|
+
{ text: "AI 配置", link: "/config/ai-config" },
|
|
87
|
+
{ text: "分支配置", link: "/config/branch-config" },
|
|
88
|
+
{ text: "提交配置", link: "/config/commit-config" },
|
|
89
|
+
{ text: "配置示例", link: "/config/examples" },
|
|
90
|
+
],
|
|
91
|
+
},
|
|
92
|
+
],
|
|
98
93
|
},
|
|
99
94
|
|
|
100
95
|
// 社交链接
|
|
101
96
|
socialLinks: [
|
|
102
|
-
{
|
|
103
|
-
|
|
97
|
+
{
|
|
98
|
+
icon: "github",
|
|
99
|
+
link: "https://github.com/iamzjt-front-end/git-workflow",
|
|
100
|
+
},
|
|
101
|
+
{ icon: "npm", link: "https://www.npmjs.com/package/@zjex/git-workflow" },
|
|
104
102
|
],
|
|
105
103
|
|
|
106
104
|
// 页脚
|
|
107
105
|
footer: {
|
|
108
|
-
message:
|
|
109
|
-
copyright:
|
|
106
|
+
message: "Released under the MIT License.",
|
|
107
|
+
copyright: "Copyright © 2026 zjex",
|
|
110
108
|
},
|
|
111
109
|
|
|
112
110
|
// 搜索
|
|
113
111
|
search: {
|
|
114
|
-
provider:
|
|
112
|
+
provider: "local",
|
|
115
113
|
},
|
|
116
114
|
|
|
117
115
|
// 编辑链接
|
|
118
116
|
editLink: {
|
|
119
|
-
pattern:
|
|
120
|
-
|
|
117
|
+
pattern:
|
|
118
|
+
"https://github.com/iamzjt-front-end/git-workflow/edit/main/docs/:path",
|
|
119
|
+
text: "在 GitHub 上编辑此页",
|
|
121
120
|
},
|
|
122
121
|
|
|
123
122
|
// 最后更新时间
|
|
124
123
|
lastUpdated: {
|
|
125
|
-
text:
|
|
124
|
+
text: "最后更新",
|
|
126
125
|
formatOptions: {
|
|
127
|
-
dateStyle:
|
|
128
|
-
timeStyle:
|
|
129
|
-
}
|
|
126
|
+
dateStyle: "short",
|
|
127
|
+
timeStyle: "medium",
|
|
128
|
+
},
|
|
130
129
|
},
|
|
131
130
|
|
|
132
131
|
// 大纲配置
|
|
133
132
|
outline: {
|
|
134
133
|
level: [2, 3],
|
|
135
|
-
label:
|
|
134
|
+
label: "页面导航",
|
|
136
135
|
},
|
|
137
136
|
|
|
138
137
|
// 返回顶部
|
|
139
|
-
returnToTopLabel:
|
|
138
|
+
returnToTopLabel: "返回顶部",
|
|
140
139
|
|
|
141
140
|
// 深色模式切换
|
|
142
|
-
darkModeSwitchLabel:
|
|
143
|
-
lightModeSwitchTitle:
|
|
144
|
-
darkModeSwitchTitle:
|
|
141
|
+
darkModeSwitchLabel: "主题",
|
|
142
|
+
lightModeSwitchTitle: "切换到浅色模式",
|
|
143
|
+
darkModeSwitchTitle: "切换到深色模式",
|
|
145
144
|
},
|
|
146
145
|
|
|
147
146
|
// Markdown 配置
|
|
148
147
|
markdown: {
|
|
149
148
|
lineNumbers: true,
|
|
150
149
|
theme: {
|
|
151
|
-
light:
|
|
152
|
-
dark:
|
|
153
|
-
}
|
|
150
|
+
light: "github-light",
|
|
151
|
+
dark: "github-dark",
|
|
152
|
+
},
|
|
154
153
|
},
|
|
155
154
|
|
|
156
155
|
// 头部配置
|
|
157
156
|
head: [
|
|
158
|
-
[
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
[
|
|
163
|
-
[
|
|
164
|
-
[
|
|
165
|
-
[
|
|
166
|
-
[
|
|
167
|
-
|
|
168
|
-
|
|
157
|
+
[
|
|
158
|
+
"link",
|
|
159
|
+
{ rel: "icon", type: "image/svg+xml", href: "/git-workflow/favicon.svg" },
|
|
160
|
+
],
|
|
161
|
+
["link", { rel: "apple-touch-icon", href: "/git-workflow/logo.svg" }],
|
|
162
|
+
["meta", { name: "theme-color", content: "#646cff" }],
|
|
163
|
+
["meta", { name: "og:type", content: "website" }],
|
|
164
|
+
["meta", { name: "og:locale", content: "zh-CN" }],
|
|
165
|
+
["meta", { name: "og:site_name", content: "Git Workflow" }],
|
|
166
|
+
["meta", { name: "og:image", content: "/git-workflow/logo.svg" }],
|
|
167
|
+
[
|
|
168
|
+
"meta",
|
|
169
|
+
{
|
|
170
|
+
name: "og:title",
|
|
171
|
+
content: "Git Workflow - 极简的 Git 工作流 CLI 工具",
|
|
172
|
+
},
|
|
173
|
+
],
|
|
174
|
+
[
|
|
175
|
+
"meta",
|
|
176
|
+
{ name: "og:description", content: "让分支管理和版本发布变得轻松愉快" },
|
|
177
|
+
],
|
|
178
|
+
],
|
|
179
|
+
});
|
package/docs/commands/branch.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
| ------------------------------ | ----------------- | ----------------- |
|
|
9
9
|
| `gw feature [--base <branch>]` | `gw feat`, `gw f` | 创建 feature 分支 |
|
|
10
10
|
| `gw hotfix [--base <branch>]` | `gw fix`, `gw h` | 创建 hotfix 分支 |
|
|
11
|
-
| `gw
|
|
11
|
+
| `gw br:del [branch]` | `gw brd` | 删除本地/远程分支 |
|
|
12
12
|
|
|
13
13
|
## ✨ 创建 Feature 分支
|
|
14
14
|
|
|
@@ -55,11 +55,13 @@ gw f --base release/1.0
|
|
|
55
55
|
### 分支命名规范
|
|
56
56
|
|
|
57
57
|
**生成格式:**
|
|
58
|
+
|
|
58
59
|
```
|
|
59
60
|
feature/YYYYMMDD-[ID-]description
|
|
60
61
|
```
|
|
61
62
|
|
|
62
63
|
**示例:**
|
|
64
|
+
|
|
63
65
|
```bash
|
|
64
66
|
# 有 ID 的情况
|
|
65
67
|
feature/20260111-PROJ-123-add-user-login
|
|
@@ -69,6 +71,7 @@ feature/20260111-add-user-login
|
|
|
69
71
|
```
|
|
70
72
|
|
|
71
73
|
**命名优势:**
|
|
74
|
+
|
|
72
75
|
- 📅 **时间排序** - 按创建日期自然排序
|
|
73
76
|
- 🔍 **易于搜索** - 可以按日期或 ID 快速查找
|
|
74
77
|
- 📋 **可追溯性** - 每个分支都能追溯到具体需求
|
|
@@ -90,6 +93,7 @@ gw f
|
|
|
90
93
|
```
|
|
91
94
|
|
|
92
95
|
选择"是"后:
|
|
96
|
+
|
|
93
97
|
```bash
|
|
94
98
|
✔ 更改已暂存到 stash
|
|
95
99
|
✔ 分支创建成功: feature/20260111-PROJ-123-add-login
|
|
@@ -121,12 +125,14 @@ gw h
|
|
|
121
125
|
### Hotfix 特点
|
|
122
126
|
|
|
123
127
|
**与 Feature 分支的区别:**
|
|
128
|
+
|
|
124
129
|
- 🚨 **紧急性** - 用于紧急修复生产环境问题
|
|
125
130
|
- 🎯 **基础分支** - 通常基于 `main` 分支创建
|
|
126
131
|
- 🔄 **合并策略** - 需要同时合并到 `main` 和 `develop`
|
|
127
132
|
- 📝 **ID 标签** - 默认提示 "Issue ID" 而不是 "Story ID"
|
|
128
133
|
|
|
129
134
|
**典型使用场景:**
|
|
135
|
+
|
|
130
136
|
- 生产环境 Bug 修复
|
|
131
137
|
- 安全漏洞修复
|
|
132
138
|
- 关键功能故障修复
|
|
@@ -137,16 +143,15 @@ gw h
|
|
|
137
143
|
### 基本用法
|
|
138
144
|
|
|
139
145
|
```bash
|
|
140
|
-
gw
|
|
146
|
+
gw brd
|
|
141
147
|
# 或
|
|
142
|
-
gw
|
|
143
|
-
gw del
|
|
148
|
+
gw br:del
|
|
144
149
|
```
|
|
145
150
|
|
|
146
151
|
### 交互式选择
|
|
147
152
|
|
|
148
153
|
```bash
|
|
149
|
-
gw
|
|
154
|
+
gw brd
|
|
150
155
|
? 选择要删除的分支:
|
|
151
156
|
❯ feature/20260105-PROJ-100-old-feature (本地+远程) 3 days ago
|
|
152
157
|
feature/20260103-test-branch (仅本地) 5 days ago
|
|
@@ -155,6 +160,7 @@ gw d
|
|
|
155
160
|
```
|
|
156
161
|
|
|
157
162
|
**分支信息说明:**
|
|
163
|
+
|
|
158
164
|
- **分支名** - 完整的分支名称
|
|
159
165
|
- **状态** - 显示是否存在远程分支
|
|
160
166
|
- **时间** - 最后提交时间,按最近使用排序
|
|
@@ -187,7 +193,7 @@ gw d
|
|
|
187
193
|
|
|
188
194
|
```bash
|
|
189
195
|
# 直接删除指定分支
|
|
190
|
-
gw
|
|
196
|
+
gw brd feature/old-branch
|
|
191
197
|
|
|
192
198
|
# 系统会自动检测并询问是否删除远程分支
|
|
193
199
|
```
|
|
@@ -197,7 +203,7 @@ gw d feature/old-branch
|
|
|
197
203
|
虽然不支持多选,但可以连续删除:
|
|
198
204
|
|
|
199
205
|
```bash
|
|
200
|
-
gw
|
|
206
|
+
gw brd
|
|
201
207
|
# 删除第一个分支后,会自动返回分支列表
|
|
202
208
|
# 可以继续选择删除其他分支
|
|
203
209
|
```
|
|
@@ -205,12 +211,14 @@ gw d
|
|
|
205
211
|
### 安全保护
|
|
206
212
|
|
|
207
213
|
**保护机制:**
|
|
214
|
+
|
|
208
215
|
- 🛡️ **当前分支保护** - 不能删除当前所在的分支
|
|
209
216
|
- 🛡️ **主分支保护** - 不会显示 main/master/develop 等主分支
|
|
210
217
|
- 🛡️ **确认机制** - 删除前需要明确确认
|
|
211
218
|
- 🛡️ **状态检查** - 显示分支的本地/远程状态
|
|
212
219
|
|
|
213
220
|
**错误处理:**
|
|
221
|
+
|
|
214
222
|
```bash
|
|
215
223
|
❌ 无法删除分支: 当前正在使用此分支
|
|
216
224
|
❌ 远程分支删除失败: 权限不足
|
|
@@ -229,6 +237,7 @@ gw d
|
|
|
229
237
|
```
|
|
230
238
|
|
|
231
239
|
**自定义前缀示例:**
|
|
240
|
+
|
|
232
241
|
```json
|
|
233
242
|
{
|
|
234
243
|
"featurePrefix": "feat",
|
|
@@ -237,6 +246,7 @@ gw d
|
|
|
237
246
|
```
|
|
238
247
|
|
|
239
248
|
生成的分支名:
|
|
249
|
+
|
|
240
250
|
```
|
|
241
251
|
feat/20260111-PROJ-123-add-login
|
|
242
252
|
fix/20260111-BUG-456-fix-crash
|
|
@@ -253,6 +263,7 @@ fix/20260111-BUG-456-fix-crash
|
|
|
253
263
|
```
|
|
254
264
|
|
|
255
265
|
**强制要求 ID:**
|
|
266
|
+
|
|
256
267
|
```json
|
|
257
268
|
{
|
|
258
269
|
"requireId": true
|
|
@@ -262,6 +273,7 @@ fix/20260111-BUG-456-fix-crash
|
|
|
262
273
|
设置后,创建分支时必须填写 ID,不能跳过。
|
|
263
274
|
|
|
264
275
|
**自定义 ID 标签:**
|
|
276
|
+
|
|
265
277
|
```json
|
|
266
278
|
{
|
|
267
279
|
"featureIdLabel": "Jira ID",
|
|
@@ -288,6 +300,7 @@ fix/20260111-BUG-456-fix-crash
|
|
|
288
300
|
```
|
|
289
301
|
|
|
290
302
|
**配置选项:**
|
|
303
|
+
|
|
291
304
|
- `true` - 创建分支后自动推送,不询问
|
|
292
305
|
- `false` - 创建分支后不推送,不询问
|
|
293
306
|
- 不设置 - 每次创建分支时询问(默认行为)
|
|
@@ -330,7 +343,7 @@ gw c
|
|
|
330
343
|
# 4. 合并到 main 和 develop
|
|
331
344
|
|
|
332
345
|
# 5. 删除 hotfix 分支
|
|
333
|
-
gw
|
|
346
|
+
gw brd
|
|
334
347
|
```
|
|
335
348
|
|
|
336
349
|
### 场景三:实验性功能
|
|
@@ -343,7 +356,7 @@ gw f
|
|
|
343
356
|
# 2. 实验开发...
|
|
344
357
|
|
|
345
358
|
# 3. 如果实验失败,直接删除分支
|
|
346
|
-
gw
|
|
359
|
+
gw brd
|
|
347
360
|
# 选择实验分支删除
|
|
348
361
|
```
|
|
349
362
|
|
|
@@ -361,7 +374,7 @@ git push origin feature/20260111-PROJ-123-add-feature
|
|
|
361
374
|
# 3. 创建 Pull Request 到 develop
|
|
362
375
|
|
|
363
376
|
# 4. 代码审查通过后,删除本地分支
|
|
364
|
-
gw
|
|
377
|
+
gw brd
|
|
365
378
|
```
|
|
366
379
|
|
|
367
380
|
## 🔧 高级技巧
|
|
@@ -388,7 +401,7 @@ gw f
|
|
|
388
401
|
|
|
389
402
|
```bash
|
|
390
403
|
# 使用 Git Workflow 逐个删除
|
|
391
|
-
gw
|
|
404
|
+
gw brd
|
|
392
405
|
|
|
393
406
|
# 或使用 Git 命令批量删除已合并分支
|
|
394
407
|
git branch --merged | grep -v "\*\|main\|develop" | xargs -n 1 git branch -d
|
|
@@ -409,6 +422,7 @@ git checkout -b recovered-branch <commit-hash>
|
|
|
409
422
|
### 问题一:分支名包含特殊字符
|
|
410
423
|
|
|
411
424
|
**问题:**
|
|
425
|
+
|
|
412
426
|
```bash
|
|
413
427
|
gw f
|
|
414
428
|
? 请输入描述: fix bug #123
|
|
@@ -416,6 +430,7 @@ gw f
|
|
|
416
430
|
```
|
|
417
431
|
|
|
418
432
|
**解决方案:**
|
|
433
|
+
|
|
419
434
|
- 避免使用 `#`, `@`, `空格` 等特殊字符
|
|
420
435
|
- 使用 `-` 或 `_` 连接单词
|
|
421
436
|
- 推荐格式:`fix-bug-123`
|
|
@@ -423,11 +438,13 @@ gw f
|
|
|
423
438
|
### 问题二:无法删除远程分支
|
|
424
439
|
|
|
425
440
|
**问题:**
|
|
441
|
+
|
|
426
442
|
```bash
|
|
427
443
|
❌ 远程分支删除失败: 权限不足
|
|
428
444
|
```
|
|
429
445
|
|
|
430
446
|
**解决方案:**
|
|
447
|
+
|
|
431
448
|
1. 检查是否有推送权限
|
|
432
449
|
2. 确认远程分支是否存在
|
|
433
450
|
3. 手动删除:`git push origin --delete branch-name`
|
|
@@ -435,11 +452,13 @@ gw f
|
|
|
435
452
|
### 问题三:基础分支不存在
|
|
436
453
|
|
|
437
454
|
**问题:**
|
|
455
|
+
|
|
438
456
|
```bash
|
|
439
457
|
❌ 基础分支 'develop' 不存在
|
|
440
458
|
```
|
|
441
459
|
|
|
442
460
|
**解决方案:**
|
|
461
|
+
|
|
443
462
|
1. 检查分支名是否正确
|
|
444
463
|
2. 拉取远程分支:`git fetch origin develop:develop`
|
|
445
464
|
3. 或使用其他基础分支:`gw f --base main`
|
|
@@ -447,11 +466,13 @@ gw f
|
|
|
447
466
|
### 问题四:分支已存在
|
|
448
467
|
|
|
449
468
|
**问题:**
|
|
469
|
+
|
|
450
470
|
```bash
|
|
451
471
|
❌ 分支 'feature/20260111-PROJ-123-add-login' 已存在
|
|
452
472
|
```
|
|
453
473
|
|
|
454
474
|
**解决方案:**
|
|
475
|
+
|
|
455
476
|
1. 使用不同的描述
|
|
456
477
|
2. 切换到现有分支:`git checkout feature/20260111-PROJ-123-add-login`
|
|
457
478
|
3. 或删除现有分支后重新创建
|
|
@@ -465,4 +486,4 @@ gw f
|
|
|
465
486
|
|
|
466
487
|
---
|
|
467
488
|
|
|
468
|
-
分支管理是 Git 工作流的基础,通过 Git Workflow 的分支命令,你可以轻松创建规范的分支名称,高效管理分支生命周期。
|
|
489
|
+
分支管理是 Git 工作流的基础,通过 Git Workflow 的分支命令,你可以轻松创建规范的分支名称,高效管理分支生命周期。
|
package/docs/commands/index.md
CHANGED
|
@@ -6,27 +6,29 @@ Git Workflow 提供了一套简洁而强大的命令,涵盖了 Git 工作流
|
|
|
6
6
|
|
|
7
7
|
### 核心命令
|
|
8
8
|
|
|
9
|
-
| 命令
|
|
10
|
-
|
|
|
11
|
-
| `gw`
|
|
12
|
-
| `gw f`
|
|
13
|
-
| `gw h`
|
|
14
|
-
| `gw c`
|
|
15
|
-
| `gw log
|
|
16
|
-
| `gw t`
|
|
17
|
-
| `gw
|
|
18
|
-
| `gw s`
|
|
9
|
+
| 命令 | 别名 | 功能 | 示例 |
|
|
10
|
+
| -------- | ----------------- | ------------------- | --------------------- |
|
|
11
|
+
| `gw` | - | 显示交互式菜单 | `gw` |
|
|
12
|
+
| `gw f` | `feat`, `feature` | 创建 feature 分支 | `gw f --base develop` |
|
|
13
|
+
| `gw h` | `fix`, `hotfix` | 创建 hotfix 分支 | `gw h` |
|
|
14
|
+
| `gw c` | `cm`, `commit` | 提交代码(AI 模式) | `gw c` |
|
|
15
|
+
| `gw log` | `ls`, `l` | 查看提交历史 | `gw log` |
|
|
16
|
+
| `gw t` | `tag` | 创建 tag | `gw t v` |
|
|
17
|
+
| `gw brd` | `br:del` | 删除分支 | `gw brd feature/old` |
|
|
18
|
+
| `gw s` | `st`, `stash` | 管理 stash | `gw s` |
|
|
19
19
|
|
|
20
20
|
### 辅助命令
|
|
21
21
|
|
|
22
|
-
| 命令
|
|
23
|
-
|
|
|
24
|
-
| `gw r`
|
|
25
|
-
| `gw ts`
|
|
26
|
-
| `gw td`
|
|
27
|
-
| `gw tu`
|
|
28
|
-
| `gw
|
|
29
|
-
| `gw
|
|
22
|
+
| 命令 | 别名 | 功能 | 示例 |
|
|
23
|
+
| --------- | ------------ | ------------------ | --------- |
|
|
24
|
+
| `gw r` | `release` | 发布版本 | `gw r` |
|
|
25
|
+
| `gw ts` | `tags` | 列出 tags | `gw ts v` |
|
|
26
|
+
| `gw td` | `tag:del` | 删除 tag | `gw td` |
|
|
27
|
+
| `gw tu` | `tag:update` | 修改 tag | `gw tu` |
|
|
28
|
+
| `gw tc` | `tag:clean` | 清理无效 tag | `gw tc` |
|
|
29
|
+
| `gw init` | - | 初始化配置 | `gw init` |
|
|
30
|
+
| `gw upt` | `update` | 更新工具 | `gw upt` |
|
|
31
|
+
| `gw cc` | `clean` | 清理缓存和临时文件 | `gw cc` |
|
|
30
32
|
|
|
31
33
|
## 🎯 使用模式
|
|
32
34
|
|
|
@@ -68,6 +70,7 @@ gw
|
|
|
68
70
|
```
|
|
69
71
|
|
|
70
72
|
**特点:**
|
|
73
|
+
|
|
71
74
|
- 🎨 优雅的 ASCII Art Logo
|
|
72
75
|
- 📋 清晰的操作菜单
|
|
73
76
|
- 🎯 键盘快捷操作
|
|
@@ -92,6 +95,7 @@ gw d
|
|
|
92
95
|
```
|
|
93
96
|
|
|
94
97
|
**特点:**
|
|
98
|
+
|
|
95
99
|
- ⚡️ 快速执行
|
|
96
100
|
- 🤖 支持脚本化
|
|
97
101
|
- 📝 支持参数传递
|
|
@@ -126,15 +130,15 @@ Git Workflow 使用颜色来区分不同类型的信息:
|
|
|
126
130
|
|
|
127
131
|
所有交互界面都支持键盘操作:
|
|
128
132
|
|
|
129
|
-
| 按键
|
|
130
|
-
|
|
|
131
|
-
| ↑/↓
|
|
132
|
-
| ←/→
|
|
133
|
-
| 空格
|
|
134
|
-
| 回车
|
|
135
|
-
| Ctrl+C
|
|
136
|
-
| Tab
|
|
137
|
-
| Esc
|
|
133
|
+
| 按键 | 功能 |
|
|
134
|
+
| ------ | ------------------------- |
|
|
135
|
+
| ↑/↓ | 上下选择选项 |
|
|
136
|
+
| ←/→ | 左右切换(多选模式) |
|
|
137
|
+
| 空格 | 选择/取消选择(多选模式) |
|
|
138
|
+
| 回车 | 确认选择 |
|
|
139
|
+
| Ctrl+C | 优雅退出 |
|
|
140
|
+
| Tab | 自动补全(输入模式) |
|
|
141
|
+
| Esc | 取消当前操作 |
|
|
138
142
|
|
|
139
143
|
## 🔧 全局选项
|
|
140
144
|
|
|
@@ -173,8 +177,8 @@ DEBUG=gw:* gw c
|
|
|
173
177
|
专注于分支的创建、删除和管理:
|
|
174
178
|
|
|
175
179
|
- [**gw f**](/commands/branch#创建-feature-分支) - 创建 feature 分支
|
|
176
|
-
- [**gw h**](/commands/branch#创建-hotfix-分支) - 创建 hotfix 分支
|
|
177
|
-
- [**gw
|
|
180
|
+
- [**gw h**](/commands/branch#创建-hotfix-分支) - 创建 hotfix 分支
|
|
181
|
+
- [**gw brd**](/commands/branch#删除分支) - 删除本地/远程分支
|
|
178
182
|
|
|
179
183
|
### 提交管理
|
|
180
184
|
|
|
@@ -191,6 +195,7 @@ DEBUG=gw:* gw c
|
|
|
191
195
|
- [**gw ts**](/commands/tag#列出-tags) - 列出所有标签
|
|
192
196
|
- [**gw td**](/commands/tag#删除-tag) - 删除标签
|
|
193
197
|
- [**gw tu**](/commands/tag#修改-tag) - 修改标签
|
|
198
|
+
- [**gw tc**](/commands/tag#清理无效-tag) - 清理无效标签
|
|
194
199
|
- [**gw r**](/commands/release) - 发布新版本
|
|
195
200
|
|
|
196
201
|
### 代码暂存
|
|
@@ -205,7 +210,7 @@ DEBUG=gw:* gw c
|
|
|
205
210
|
|
|
206
211
|
- [**gw init**](/commands/config) - 初始化配置
|
|
207
212
|
- [**gw upt**](/commands/update) - 更新工具
|
|
208
|
-
- [**gw
|
|
213
|
+
- [**gw cc**](/commands/update#清理缓存) - 清理缓存和临时文件
|
|
209
214
|
|
|
210
215
|
## 🚀 快速参考
|
|
211
216
|
|
|
@@ -290,7 +295,7 @@ gw d
|
|
|
290
295
|
- **我想提交代码** → `gw c` (commit)
|
|
291
296
|
- **我想查看历史** → `gw log` (log)
|
|
292
297
|
- **我想创建版本** → `gw t` (tag) 或 `gw r` (release)
|
|
293
|
-
- **我想删除分支** → `gw
|
|
298
|
+
- **我想删除分支** → `gw brd` (branch delete)
|
|
294
299
|
- **我想管理 stash** → `gw s` (stash)
|
|
295
300
|
- **我想配置工具** → `gw init`
|
|
296
301
|
- **我想更新工具** → `gw upt`
|
|
@@ -302,7 +307,7 @@ gw d
|
|
|
302
307
|
- **提交当前更改** → `gw c`
|
|
303
308
|
- **查看项目历史** → `gw log`
|
|
304
309
|
- **发布新版本** → `gw r` + `gw t`
|
|
305
|
-
- **清理旧分支** → `gw
|
|
310
|
+
- **清理旧分支** → `gw brd`
|
|
306
311
|
- **暂存当前工作** → `gw s`
|
|
307
312
|
|
|
308
313
|
### 交互式查找
|
|
@@ -316,4 +321,4 @@ gw
|
|
|
316
321
|
|
|
317
322
|
---
|
|
318
323
|
|
|
319
|
-
掌握这些命令后,你就能高效地管理 Git 工作流了。每个命令都经过精心设计,旨在简化复杂的 Git 操作,让你专注于代码开发。
|
|
324
|
+
掌握这些命令后,你就能高效地管理 Git 工作流了。每个命令都经过精心设计,旨在简化复杂的 Git 操作,让你专注于代码开发。
|