使用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 是最常用也是最适合"合并单独某条记录"场景的方法。

相关推荐
憧憬成为java架构高手的小白1 小时前
git工作流程简化版
java·spring boot·git
东风微鸣2 小时前
Argo CD 用户管理:本地用户配置与权限分离实践
git·后端
袋子(PJ)3 小时前
2026最新GitHub发布项目全过程
git·github
许彰午4 小时前
Git实战——从零到团队协作以一个开源项目为例
git·开源
言6664 小时前
要忽略ider的文件在目录下 git暂存区消失
git
‎ദ്ദിᵔ.˛.ᵔ₎4 小时前
Git使用
git
小李不困还能学5 小时前
GitBash的保姆级安装教程
git
摆烂菜鸡沧9966 小时前
【自用整理】本地关联GitHub多账号设置
git·github
lisanmengmeng6 小时前
工作中的Git使用实践(三)
git
东北甜妹21 小时前
GitLab配置步骤
git