git-flow
npx skills add https://github.com/abcfed/claude-marketplace --skill git-flow
Agent 安装分布
Skill 文档
ABC Git Flow 工使µå©æ
帮å©ä½ å¨å¼åéæ±æä¿®å¤ bug æ¶ä½¿ç¨ abc-git-flow å·¥å ·ç®¡ç git 忝ã
â ï¸ Claude Code ç¨æ·æ³¨æï¼é¨å
git abcå½ä»¤éè¦äº¤äºå¼è¾å ¥ï¼å¨ Claude Code 䏿 æ³æ£å¸¸å·¥ä½ãæ¨èä½¿ç¨æä¾ç Python èæ¬ï¼è§ä¸æ¹é交äºå¼å½ä»¤é¨åï¼ï¼é¿å ç»ç«¯é»å¡ã
å®è£
npx add-skill https://github.com/ABCFed/claude-marketplace/tree/main/skills/git-flow
å®è£ abc-git-flow
macOS
sudo curl https://cis-static-common.oss-cn-shanghai.aliyuncs.com/assets/abc-git-flow/git-abc-flow-install.sh
妿æ¥é Bad CPU typeï¼éè¦æ§è¡ï¼
/usr/sbin/softwareupdate --install-rosetta --agree-to-license
Windows
curl -# -O https://static-common-cdn.abcyun.cn/assets/abc-git-flow/install.bat && call install.bat
Linux
curl https://static-common-cdn.abcyun.cn/assets/abc-git-flow/install-linux.sh | sh
å®è£ Python ä¾èµ
pip install requests
åå§å
馿¬¡ä½¿ç¨éè¦å¨å·¥ç¨ç®å½ä¸æ§è¡ï¼
git abc init
git abc tag config <åç¼> # é
ç½® tag åç¼ï¼å¦ pcãcharge
常ç¨å½ä»¤
忝å½åè§èï¼åè§ åæ¯å½åè§åï¼äºè§£ featureãhotfixãhotfix-g åæ¯çæ£ç¡®å½åæ ¼å¼ã
éæ±å¼å (Feature)
# å¼å§éæ±å¼å - ä» develop æå忝
git abc feature start <feature-name>
# 宿鿱å¼å - åå¹¶å° develop
git abc feature finish <feature-name>
æ£å¼ç¯å¢ç´§æ¥ä¿®å¤ (Hotfix)
# å¼å§ä¿®å¤ - ä» master æå忝
git abc hotfix start <hotfix-name>
# å®æä¿®å¤ - åå¹¶å° master/gray/rc/develop
git abc hotfix finish <hotfix-name>
ç°åº¦ç¯å¢ç´§æ¥ä¿®å¤ (Hotfix-g)
# å¼å§ä¿®å¤ - ä» gray æå忝
git abc hotfix-g start <hotfix-name>
# å®æä¿®å¤ - åå¹¶å° gray/rc/develop
git abc hotfix-g finish <hotfix-name>
RC åæ¯ç®¡ç
# å° develop åå
¥ rcï¼ä¸çº¿åï¼
git abc rc start
# å° rc åå
¥ gray
git abc rc finish
ç°åº¦åå¸
# å° gray åå
¥ masterï¼ç°åº¦å°å
¨éï¼
git abc gray publish
Tag 管ç
交äºå¼å½ä»¤ï¼éè¦å¡«åä¿¡æ¯ï¼ï¼
# å建 tagï¼ä¼æç¤ºéæ©ç±»åå¹¶å¡«åä¿¡æ¯ï¼
git abc tag create
# ç´æ¥æå® tag ç±»åï¼ä½ä»éå¡«åä¸è½¦/ææµä¿¡æ¯ï¼
git abc tag create v
git abc tag create g
git abc tag create f
# æ¥çæè¿ tag
git abc tag show [ç±»å]
# é
ç½® tag åç¼
git abc tag config [åç¼]
é交äºå¼èæ¬ï¼æ¨èç¨äº Claude Codeï¼ï¼
# å建æ£å¼ç¯å¢ tag
~/.claude/skills/git-flow/scripts/tag_create.py v --deps "abc-auth" --operation "æ "
# åå»ºéæ±ææµ tag
~/.claude/skills/git-flow/scripts/tag_create.py f \
--deps "æ " \
--operation "æ " \
--remark "feat: å®ç°æ°åè½" \
--tapd-id "1122044681001112866"
# å建ç°åº¦ç¯å¢ tag
~/.claude/skills/git-flow/scripts/tag_create.py g \
--deps "abc-auth" \
--operation "æ "
详ç»è¯´æï¼åè§ tag-create è¯¦ç»æåï¼å å« tag ç±»åãåæ¯çº¦æãå½ä»¤ç¨æ³ç宿´è¯´æã
Merge Request 管ç
交äºå¼å½ä»¤ï¼ä¸æ¨èï¼ï¼
git abc mr create # ä¼è¿å
¥äº¤äºå¼éæ©
git abc mr config # é
ç½®äºæ Token
é交äºå¼èæ¬ï¼æ¨èç¨äº Claude Codeï¼ï¼
# å建 MRï¼éè¦å
é
ç½® git abc mr configï¼
~/.claude/skills/git-flow/scripts/mr_create.py \
-t develop \
-T "feat: æ°åè½å¼å" \
-r å¼ ä¸ æå
# æå®æè¿°
~/.claude/skills/git-flow/scripts/mr_create.py \
-t develop \
-T "fix: ä¿®å¤bug" \
-r å¼ ä¸ \
-d "ä¿®å¤äºxxxé®é¢"
é交äºå¼å½ä»¤ï¼Claude Code æ¨èï¼
ç±äºé¨åå½ä»¤éè¦äº¤äºå¼è¾å ¥ï¼æä¾äº Python èæ¬æ¿ä»£æ¹æ¡ï¼
Tag åå»ºèæ¬ (scripts/tag_create.py)
| å½ä»¤ | 说æ |
|---|---|
tag_create.py v --deps "xxx" --operation "xxx" |
å建æ£å¼ç¯å¢ tag |
tag_create.py g --deps "xxx" --operation "xxx" |
å建ç°åº¦ç¯å¢ tag |
tag_create.py p --deps "xxx" --operation "xxx" |
å建é¢åå¸ tag |
tag_create.py f --deps "xxx" --operation "xxx" --remark "xxx" |
åå»ºéæ±ææµ tag |
tag_create.py t --deps "xxx" --operation "xxx" --remark "xxx" |
å建æµè¯ç¯å¢ tag |
宿´åæ°ï¼
tag_type– Tag ç±»å (f/t/v/g/p)ï¼å¿ å¡«--deps– ä¾èµçæå¡--operation– éè¦çæä½--remark– 夿³¨/说æ--tapd-id– å ³èç TAPD ID (f tag å¯é)-b, --business– ä¸å¡çº¿ (é»è®¤ abc-his)--prefix– Tag åç¼ (ä» git config 读å)--hotfix– Hotfix 模å¼--skipdeploy– è·³è¿ä¸è½¦/ææµï¼ä» å建 tag
MR åå»ºèæ¬ (scripts/mr_create.py)
| åæ° | 说æ | å¿ å¡« |
|---|---|---|
-t, --target |
ç®æ 忝 | â |
-T, --title |
MR æ é¢ | â |
-r, --reviewers |
è¯å®¡è å§å | â |
-d, --description |
MR æè¿° | â |
--skip-notify |
è·³è¿ä¼ä¸å¾®ä¿¡éç¥ | â |
é交äºå¼ä½¿ç¨æåï¼åè§ é交äºå¼å½ä»¤ä½¿ç¨æå
å ¸å工使µç¨ï¼Claude Code ä¼åçï¼
éæ±å¼åæµç¨
-
ä» develop æå¼å忝ï¼
git abc feature start <feature-name> -
è¿è¡éæ±å¼åãç¼ç
-
å¼å宿åï¼rebase develop ç代ç ï¼å建 f-tagï¼
git rebase develop ~/.claude/skills/git-flow/scripts/tag_create.py f \ --deps "æ " \ --operation "æ " \ --remark "feat: å®ç°æ°åè½" \ --tapd-id "1122044681001112866" -
ææµå®æï¼åå¹¶å° developï¼
git abc feature finish <feature-name> -
çå¾ éææµè¯ï¼å建 t-tagï¼
~/.claude/skills/git-flow/scripts/tag_create.py t \ --deps "æ " \ --operation "æ " \ --remark "éææµè¯" -
éææµè¯å®æ¯ï¼å° develop åå ¥ rcï¼å建 p-tagï¼
git abc rc start ~/.claude/skills/git-flow/scripts/tag_create.py p \ --deps "abc-auth" \ --operation "æ "
æ£å¼ç¯å¢ Bug ä¿®å¤æµç¨
-
ä» master æ hotfix 忝ï¼
git abc hotfix start <hotfix-name> -
ä¿®å¤åå建 t-tag ç»æµè¯åå¦ï¼
~/.claude/skills/git-flow/scripts/tag_create.py t \ --deps "æ " \ --operation "æ " \ --remark "hotfix: ä¿®å¤xxxé®é¢" -
æµè¯å®æ¯ååå¹¶å° master/gray/rc/developï¼
git abc hotfix finish <hotfix-name>注æï¼éè¦å° masterãgrayãrc å develop push å°è¿ç¨
ç°åº¦ç¯å¢ Bug ä¿®å¤æµç¨
-
ä» gray æ hotfix-g 忝ï¼
git abc hotfix-g start <hotfix-name> -
ä¿®å¤åå建 t-tag ç»æµè¯åå¦ï¼
~/.claude/skills/git-flow/scripts/tag_create.py t \ --deps "æ " \ --operation "æ " \ --remark "hotfix: ä¿®å¤xxxé®é¢" -
æµè¯å®æ¯ååå¹¶å° gray/rc/developï¼
git abc hotfix-g finish <hotfix-name>注æï¼éè¦å° grayãrc å develop push å°è¿ç¨
åæ¯è¯´æ
é¿æåæ¯
| 忝 | 说æ |
|---|---|
| master | æ£å¼ç¯å¢ç¨³å®ä»£ç ï¼ä¸è½ç´æ¥å¼å |
| gray | ç°åº¦ç¯å¢ç¨³å®ä»£ç ï¼ä¸è½ç´æ¥å¼å |
| rc | é¢åå¸ç¯å¢åæ¯ï¼å®æååå ¥ gray |
| develop | æ°éæ±å¼ååºç¡åæ¯ï¼æ±é已宿åè½ |
| experience | ä½éªåæ¯ï¼ä¸ä¿è¯ç¨³å®æ§ï¼ç¨äºä½éªææ°ç¹æ§ |
临æ¶åæ¯
| 忝 | æ¥æº | 说æ |
|---|---|---|
| feature | develop | æ°åè½å¼å忝 |
| hotfix | master | æ£å¼ç¯å¢ç´§æ¥é®é¢ä¿®å¤ |
| hotfix-g | gray | ç°åº¦ç¯å¢ç´§æ¥é®é¢ä¿®å¤ |
Tag å½åè§è
æ ¼å¼ï¼<åç¼><年份>.<卿°>.<æå»ºå·>
| åç¼ | 说æ |
|---|---|
pc-f |
feature åè½ææµ |
pc-t |
release éææµè¯ |
pc-g |
gray ç°åº¦åå¸ |
pc-v |
master å ¨éåå¸ |
示ä¾ï¼pc-g2021.09.03 表示 pc å·¥ç¨ç 2021 年第 9 å¨ç¬¬ä¸æ¬¡æå»º
Rebase 使ç¨åå
æ¨è使ç¨åºæ¯ï¼
- ç¬ç«å¼åç忝ï¼å°æºåæ¯åå¹¶å°è¯¥åæ¯
- æ¬å°åæ¯åæ¥è¿ç¨åæ¯ä¿®æ¹
ç¦æ¢ä½¿ç¨åºæ¯ï¼
- å¤äººåä½ç鿱忝
示ä¾ï¼
# èªå·±ç鿱忝ï¼åæ¥ develop
git rebase develop
# æ¬å° develop 忥è¿ç¨
git pull --rebase
å ¶ä»å½ä»¤
# æ¥ç abc-flow çæ¬
git abc -v
# æ¥ç帮å©
git abc -h
# æ´æ° git-abc
git abc update
å½ä»¤æ¯ææ åµå¯¹ç §
| æä½ | 交äºå¼å½ä»¤ | é交äºå¼èæ¬ | Claude Code æ¨è |
|---|---|---|---|
| Feature æä½ | git abc feature start/finish |
– | â 交äºå¼ |
| Hotfix æä½ | git abc hotfix start/finish |
– | â 交äºå¼ |
| RC æä½ | git abc rc start/finish |
– | â 交äºå¼ |
| Tag é ç½® | git abc tag config <åç¼> |
– | â 交äºå¼ |
| Tag å建 | git abc tag create v |
tag_create.py v --deps xxx |
â é交äºå¼ |
| MR å建 | git abc mr create |
mr_create.py -t xxx -T xxx -r xxx |
â é交äºå¼ |
æç¤ºï¼å¨ Claude Code ä¸ï¼ä¼å 使ç¨é交äºå¼èæ¬å建 Tag å MRï¼é¿å ç»ç«¯é»å¡ã