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

相关推荐
就叫年华吧丶1 天前
Git Bash、CMD 与 PowerShell 的区别详解
linux·git·命令行·powershell·cmd·gitbash
白玉cfc1 天前
Git提交规范
git·github
电化学仪器白超2 天前
小乌龟Git全程图形化操作指南:嵌入式本地版本管理与Gitee私有云备份实战
git·python·单片机·嵌入式硬件·物联网·gitee·自动化
K3v2 天前
【git】删除本地以及远端已经合并到master的分支
大数据·git·elasticsearch
云攀登者-望正茂2 天前
将 develop 分支拉取到特性分支时解决合并污染问题
git
金銀銅鐵2 天前
[git] 如何找到已经“丢失”的 commit?
git·后端
尘世壹俗人2 天前
linux编译安装git
linux·运维·git
打不了嗝 ᥬ᭄3 天前
Git 原理与使用
git·gitee
m0_614619063 天前
花了一下午学 Git,整理了一份学习笔记
笔记·git·学习
AGV算法笔记3 天前
解决Git> git add -A -- fatal: CRLF would be replaced by LF in Test/Test.cpp
git