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

相关推荐
R²AIN SUITE2 小时前
项目管理平台怎么和OA、钉钉、飞书、Git仓库打通?从消息通知到双向同步的5种实现路径
git·钉钉·飞书
Demons_kirit14 小时前
CTFHub 信息泄露通关笔记:Git泄露 Log - 教程
笔记·git·网络安全
鬼手点金21 小时前
构建有效 Agent 的核心原则
java·人工智能·git·学习·自动化
索西引擎1 天前
Git 大文件阻断推送的成因与历史重写修复
git
csdn2015_1 天前
git 合并分支
大数据·git·elasticsearch
9144062321 天前
mac Git 账户切换问题
git·macos
留岁1 天前
Git 命令行学习记录
git·学习·elasticsearch
笨笨饿1 天前
#142_VS Code.map文件插件的用法
git·python·stm32·单片机·嵌入式硬件·物联网·vim
鬼手点金1 天前
如何选择模型
java·前端·人工智能·git·深度学习
余槐i1 天前
Claude Code Skills 放对目录却不生效:插件启用顺序与缓存的三个坑
git·开发工具·ai agent·mcp·claude code