Git 进阶:Rebase、Cherry-pick 与团队工作流

站长发布于 2026/08/28更新于 2026/09/171596 次阅读

rebase:让提交历史变干净

git pull --rebase origin main
git rebase -i HEAD~5   # 交互式整理最近 5 个提交

交互式 rebase 常用动作:

动作作用
pick保留提交
squash合并到上一个提交
reword修改提交信息
drop丢弃提交

cherry-pick:摘樱桃

把某个分支上的单次提交「复制」到当前分支:

git cherry-pick <commit-hash>
# 冲突时
git cherry-pick --continue
git cherry-pick --abort

团队工作流选择

Trunk Based(推荐中小团队)

  • main 分支随时可发布
  • 短生命周期 feature 分支(1-2 天)
  • 合并前 squash 成单个提交

Git Flow(版本发布型项目)

  • main(生产)+ develop(集成)+ release/* + hotfix/*
  • 适合有明确版本号的传统软件

救命命令

git reflog                  # 找回「丢失」的提交
git reset --soft HEAD~1    # 撤销提交,保留改动
git revert <hash>           # 安全回滚(生成反向提交)

小结

记不住命令不要紧,记住原则:公共分支不 force push,本地历史勤整理,出事先 reflog