<< All versions

Skill v1.0.0

currentAutomated scan100/100
bighardperson/computer-science-skills-collection/git-workflow-cn
──Details
PublishedSeptember 30, 2026 at 12:37 PM
Content Hashsha256:7ccd1080f1efa579...
Git SHAe9f99fd7fed5
──Files
Files (1 file, 7.8 KB)
SKILL.md7.8 KBactive
SKILL.md · 384 lines · 7.8 KB

name: git-workflow-cn version: 1.0.0 description: Git 工作流助手 - 分支管理、冲突解决、提交规范。适合:开发者、团队协作。 metadata: openclaw: emoji: "🌳" requires: bins: ["git"]


Git 工作流助手 Skill

Git 分支管理、冲突解决、提交规范,提升团队协作效率。

核心功能

功能描述
分支管理创建、切换、合并分支
冲突解决识别和解决冲突
提交规范Conventional Commits
常见问题撤销、回滚、恢复

使用方法

分支操作

创建并切换到新分支 feature/login

冲突解决

帮我解决 Git 合并冲突

提交建议

为这些改动生成符合规范的提交信息

常用命令速查

基础操作

bash
# 初始化
git init # 初始化仓库
git clone URL # 克隆仓库
# 配置
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
# 状态查看
git status # 查看状态
git log --oneline # 简洁日志
git log --graph --oneline --all # 图形化日志
git diff # 查看改动
git show COMMIT_ID # 查看提交详情

分支管理

bash
# 查看分支
git branch # 本地分支
git branch -a # 所有分支
git branch -r # 远程分支
# 创建分支
git branch feature/login # 创建分支
git checkout -b feature/login # 创建并切换
git switch -c feature/login # 新语法
# 切换分支
git checkout feature/login # 切换分支
git switch feature/login # 新语法
# 合并分支
git merge feature/login # 合并分支
git merge --no-ff feature/login # 禁用快进
# 删除分支
git branch -d feature/login # 安全删除
git branch -D feature/login # 强制删除
git push origin --delete feature/login # 删除远程分支

远程操作

bash
# 查看远程
git remote -v # 查看远程仓库
git remote add origin URL # 添加远程
git remote set-url origin URL # 修改远程地址
# 拉取推送
git fetch origin # 获取更新
git pull origin main # 拉取并合并
git push origin main # 推送
git push -u origin feature/login # 推送并设置上游
# 同步远程
git remote prune origin # 清理无效引用
git fetch --all --prune # 获取并清理

暂存操作

bash
# 暂存工作区
git stash # 暂存当前修改
git stash save "message" # 带消息暂存
git stash list # 查看暂存列表
git stash pop # 恢复并删除
git stash apply # 恢复但不删除
git stash drop stash@{0} # 删除指定暂存
git stash clear # 清空暂存

提交规范

Conventional Commits

<type>(<scope>): <subject>
<body>
<footer>

Type 类型

Type描述示例
feat新功能feat(auth): 添加登录功能
fix修复 bugfix(api): 修复接口超时
docs文档更新docs(readme): 更新安装说明
style代码格式style: 格式化代码
refactor重构refactor(utils): 优化工具函数
perf性能优化perf(list): 优化列表渲染
test测试test(auth): 添加登录测试
chore构建/工具chore: 更新依赖
ciCI 配置ci: 添加 GitHub Actions
revert回滚revert: 回滚登录功能

提交示例

bash
# 功能
git commit -m "feat(user): 添加用户注册功能"
# 修复
git commit -m "fix(payment): 修复支付金额计算错误"
# 文档
git commit -m "docs(api): 更新接口文档"
# 重构
git commit -m "refactor(auth): 重构认证逻辑
- 提取公共方法
- 优化错误处理
- 添加单元测试"
# 破坏性变更
git commit -m "feat(api)!: 修改 API 响应格式
BREAKING CHANGE: 响应格式从 {code, data} 改为 {status, result}"

工作流模式

Git Flow

bash
# 初始化
git flow init
# 功能开发
git flow feature start login
git flow feature finish login
# 发布
git flow release start v1.0.0
git flow release finish v1.0.0
# 热修复
git flow hotfix start fix-login-bug
git flow hotfix finish fix-login-bug

GitHub Flow

bash
# 1. 从 main 创建分支
git checkout -b feature/login main
# 2. 开发并提交
git add .
git commit -m "feat: 添加登录功能"
git push origin feature/login
# 3. 创建 Pull Request
# 4. Code Review
# 5. 合并到 main
git checkout main
git pull origin main
git merge feature/login
git push origin main

GitLab Flow

bash
# 环境分支:main -> staging -> production
# 1. 功能开发
git checkout -b feature/login main
git push origin feature/login
# 2. 合并到 main
git checkout main
git merge feature/login
# 3. 部署到 staging
git checkout staging
git merge main
git push origin staging
# 4. 部署到 production
git checkout production
git merge staging
git push origin production

冲突解决

识别冲突

bash
# 查看冲突文件
git status
# 冲突标记
<<<<<<< HEAD
当前分支内容
=======
合并分支内容
>>>>>>> feature/login

解决冲突

bash
# 1. 手动编辑冲突文件
# 2. 选择保留的内容
# 3. 删除冲突标记
# 4. 添加解决后的文件
git add .
# 5. 完成合并
git commit

冲突工具

bash
# 使用合并工具
git mergetool
# 使用 VS Code
git config --global merge.tool code
git config --global mergetool.code.cmd 'code --wait $MERGED'
# 查看差异
git diff HEAD # 与 HEAD 比较
git diff --ours # 使用当前版本
git diff --theirs # 使用合并版本

常见问题解决

撤销操作

bash
# 撤销工作区修改
git checkout -- file.txt
git restore file.txt # 新语法
# 撤销暂存
git reset HEAD file.txt
git restore --staged file.txt # 新语法
# 撤销最近提交(保留修改)
git reset --soft HEAD~1
# 撤销最近提交(丢弃修改)
git reset --hard HEAD~1
# 修改最近提交信息
git commit --amend -m "新信息"

回滚代码

bash
# 回滚指定提交
git revert COMMIT_ID
# 回滚多个提交
git revert COMMIT_ID1..COMMIT_ID2
# 回滚但不提交
git revert --no-commit COMMIT_ID

恢复删除

bash
# 恢复删除的文件
git checkout COMMIT_ID -- file.txt
# 恢复删除的提交
git reflog # 查找提交
git reset --hard COMMIT_ID # 恢复
# 恢复删除的分支
git reflog # 找到分支最后的提交
git checkout -b branch_name COMMIT_ID

清理仓库

bash
# 清理未跟踪文件
git clean -n # 预览
git clean -f # 删除文件
git clean -fd # 删除文件和目录
# 清理历史
git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch path/to/file' \
--prune-empty --tag-name-filter cat -- --all
# 使用 BFG(更快)
bfg --delete-folders folder_name
git reflog expire --expire=now --all
git gc --prune=now --aggressive

别名配置

bash
# 添加到 ~/.gitconfig
[alias]
co = checkout
br = branch
ci = commit
st = status
unstage = reset HEAD --
last = log -1 HEAD
visual = log --graph --oneline --all
amend = commit --amend --no-edit
undo = reset --soft HEAD~1
wip = !git add -A && git commit -m 'WIP'

注意事项

  • 提交前先拉取最新代码
  • 功能分支及时合并
  • 避免直接提交到 main
  • 重要操作先备份

创建:2026-03-12 版本:1.0

All versions