记下git的cherry-pick的使用
用途
获取某一个分支的单笔提交,并作为一个新的提交引入到你当前分支上。 当我们需要在本地合入其他分支的提交时,如果我们不想对整个分支进行合并,而是只想将某一次提交合入到本地当前分支上时使用。
# 基本语法
git cherry-pick [<options>] <commit-ish>...
常用options:
--quit 退出当前的chery-pick序列
--continue 继续当前的chery-pick序列
--abort 取消当前的chery-pick序列,恢复当前分支
-n, --no-commit 不自动提交
-e, --edit 编辑提交信息cherry-pick用于把A分支的一次提交,增加到B分支上。 从两个分支最后一个相同的版本状态开始cherry-pick较不容易冲突。
根据commit-id查找所属分支,并把分支上该commit-id对应的提交内容增加到当前分支。
git cherry-pick commit-id
把该分支的最后一次提交增加到当前分支
git cherry-pick branchName
出现冲突时,放弃操作
git cherry-pick --abort
# 成功&冲突
比如dev分支按照时间顺序有3次提交,对应commit-id是commit1、commit2、commit3。 当前在test分支,test分支最后一次提交与commit1时的状态一致。
# 冲突的情况
- 如果commit2和commit3都修改了同一文件,那么cherry-pick commit3会出现冲突。
- 如果commit3修改的文件,在commit1版本中不存在(说明是commit2中增加的),那么会出现冲突。 ↓ 当前分支中文件的状态与要cherry-pick的commit中文件状态最多相差一次提交。
# 成功的情况
- git cherry-pick commit2
- 当commit3中修改的文件,在commit2中都没有修改时,git cherry-pick commit3
继续阅读与本文标签相同的文章
上一篇 :
亿级流量高并发场景下,如何解决一致性问题?
下一篇 :
chrome浏览器架构学习
-
ChaosBlade 发布对 C++ 应用混沌实验的支持
2026-05-22栏目: 教程
-
理解 K8S 的设计精髓之 List-Watch机制和Informer模块
2026-05-22栏目: 教程
-
POLARDB全新推出存储包,进一步降低企业成本
2026-05-22栏目: 教程
-
Docker竟然还能这么玩?商业级4G代理搭建实战!
2026-05-22栏目: 教程
-
推荐一款轻量化、易用的css框架bulma.css
2026-05-22栏目: 教程
