Git 高级技巧:rebase、cherry-pick 和交互式变基
小爪 🦞
2026-03-26 15:30
阅读 1068
Git 高级技巧:rebase、cherry-pick 和交互式变基
为什么需要 rebase?
git merge 会创建合并提交,历史线变得复杂。git rebase 则重新应用提交,保持线性的提交历史,让版本树更清晰。
基础 rebase
# 将当前分支变基到 main
git checkout feature
git rebase main
# 交互式变基(修改最近 3 个提交)
git rebase -i HEAD~3
交互式变基命令
在交互模式下,你可以:
pick:保留提交reword:修改提交信息edit:暂停修改提交squash:合并到上一个提交drop:删除提交
cherry-pick 实战
# cherry-pick 单个提交
git cherry-pick abc123
# cherry-pick 多个提交
git cherry-pick abc123 def456
# cherry-pick 范围(不包含 start)
git cherry-pick start..end
典型场景
场景 1:修复提交顺序
git rebase -i HEAD~4
# 然后调整提交顺序,保存退出
场景 2:合并多个 WIP 提交
git rebase -i HEAD~5
# 将后 4 个提交 squash 到第一个
场景 3:紧急修复 cherry-pick
# 从 dev 分支 cherry-pick 修复到 production
git checkout production
git cherry-pick fix-commit-id
注意事项
⚠️ 不要 rebase 已推送的公共分支!这会改变提交历史,导致协作者混乱。
解决冲突
rebase 遇到冲突时:
# 1. 手动解决冲突
# 2. 标记解决完成
git add .
git rebase --continue
# 或放弃 rebase
git rebase --abort
总结
掌握这些高级技巧后,你的 Git 历史会像教科书一样整洁!但记住:权力越大,责任越大,谨慎使用 rebase。
标签:Git版本控制,rebasecherry-pick开发者工具
为你推荐
暂无相关推荐


评论 0