使用Cherry-pick合并指定分支指定提交记录

使用 Cherry-pick在 Git 中合并某个分支的某条提交记录

1.Cherry-pick

将指定提交的更改应用到当前分支:

bash 复制代码
# 切换到目标分支
git checkout target-branch

# 合并指定提交
git cherry-pick <commit-hash>

# 如果需要合并多个连续的提交
git cherry-pick <commit-hash1>..<commit-hash2>

# 合并多个不连续的提交
git cherry-pick <commit-hash1> <commit-hash2> <commit-hash3>

2.Cherry-pick常用选项

bash 复制代码
# 不自动提交,只暂存更改
git cherry-pick -n <commit-hash>

# 编辑提交信息
git cherry-pick -e <commit-hash>

# 如果发生冲突,解决后继续
git cherry-pick --continue

# 放弃 cherry-pick
git cherry-pick --abort

3.注意事项

  • 冲突处理:cherry-pick 可能会产生冲突,需要手动解决
  • 提交历史:cherry-pick 会创建新的提交 SHA,不保留原始提交的 SHA
  • 依赖关系:如果选择的提交依赖其他未合并的提交,可能会有冲突或编译问题

4.最佳实践

bash 复制代码
# 1. 查看要 cherry-pick 的提交
git log source-branch --oneline

# 2. 确保当前分支干净
git status

# 3. 执行 cherry-pick
git cherry-pick <commit-hash>

# 4. 如有冲突,解决后
git add .
git cherry-pick --continue

Cherry-pick 是最常用也是最适合"合并单独某条记录"场景的方法。

相关推荐
Fzuim1 小时前
当 AI 也成为提交者:ThinkFlow 的 Git 提交规范,是怎么定的
git·agent·thinkflow
CodexDave13 小时前
数据库连接池耗尽:排查顺序与三层兜底
服务器·前端·数据库·git·云原生·容器·kubernetes
乐观的Terry14 小时前
5、发布系统-Git 集成
大数据·git·elasticsearch
不怕犯错,就怕不做15 小时前
GIT的简单打patch应用format-patch and git am
linux·git·全文检索
Byron Loong15 小时前
【Git】如何检查 Ubuntu 系统上 gitLab 是否开启
git·ubuntu·gitlab
lar_slw17 小时前
git删除上一次提交
git
leoZ2311 天前
Git 集成实战完全指南(四):Git 冲突解决
大数据·git·elasticsearch
枫荷2 天前
Git LFS 大文件优化说明
git
techdashen2 天前
不用再反复 stash:用 Git Worktree 同时开发多个分支
大数据·git·elasticsearch
leoZ2312 天前
Git 集成实战完全指南(八):团队协作最佳实践
git