Git 的 Cherry-Pick
创始人
2025-05-31 03:35:08
0

1、什么是 Cherry-Pick

cherry-pick 是 Git 版本控制工具中的一个命令,和 commit 、pull 一样,它只是一个命令。

cherry-pick 和它的名称一样,精心挑选,挑选一个我们需要的 commit 进行操作。它可以用于将在其他分支上的 commit 修改,移植到当前的分支。

一个很常见的场景,就是想在某个稳定版本上,添加一个刚开发完成的版本中的功能。就可以使用 Cherry-pick 命令,将这个功能相关的 commit 提取出来,合入稳定版本的分支上。

2、如何使用 Cherry-Pick

Cherry-Pick 使用起来非常的简单:

git cherry-pick 

这里操作的就是需要 cherry-pick 的 commit-id ,一般使用 Git 管理工具什么的,都可以很方便的查看到,否者的话,可以使用 git log 命令,查找我们需要的 commit-id。

当执行完 cherry-pick 之后,将会自动生成一个新的 commit 进行提交,也就是会有一个新的 commit ID。

如果顺利的话,就可以正常提交了。如果遇到冲突,使用 git diff 解决冲突即可,工作中,不推荐手工解决冲突,最好还是使用一些 diff 工具来处理,毕竟手工处理容易出错。

3、Cherry-Pick 的高级用法

前面介绍的最简单的 git cherry-pick 只是最简单也是最常用的方法,正常来说,我们直接使用最简单的命令就可以了,如果 commit 多了,无非就是多重复执行几次而已,但是 cherry-pick 还有一些高级点的用法,这里了解一下。

git cherry-pick -x 

增加 -x 参数,表示保留原提交的作者信息进行提交。

在 Git 1.7.2 版本开始,新增了支持批量 cherry-pick ,就是可以一次将一个连续的时间序列内的 commit ,设定一个开始和结束的 commit ,进行 cherry-pick 操作。

git cherry_pick 

可以看到,它的范围就是 start-commit-id 到 end-commit-id 之间所有的 commit,但是它这是一个 (左开,右闭] 的区间,也就是说,它将不会包含 start-commit-id 的 commit。

而如果想要包含 start-commit-id 的话,就需要使用 ^ 标记一下,就会变成一个 [左闭,右闭] 的区间,具体命令如下。

git cherry-pick ^...

举个例子来说明一下:

使用 git log —pretty=oneline 来查看当前分支最近的提交,注意 git 命令中,对于 commit-id 的操作,都只需要使用前五位就可以了。

git cherry-pick 371c2…971209 // (2,5]
git cherry-pick 371c2^…971209 // [2,5]

3、注意事项

无论是对单个 commit 进行 cherry-pick ,还是批量处理,注意一定要根据时间线,依照 commit 的先后顺序来处理,否者会有意想不到的问题。

相关内容

热门资讯

商场国庆活动策划方案,资料大全...   随着中秋节和国庆节的临近,各大商场都是攒足了劲儿,拼了命的要在这个黄金周中独领风骚,为此,龙霞唯...
如何通过企业小程序开发提升企业... 随着移动互联网的普及,企业小程序已成为企业进行线上营销和服务的重要工具之一。如何通过企...
小学生迎国庆活动方案及主持人串...   刘:从金黄的季节走来,国庆节是一首优美的诗歌;卢:从历史的蜿蜒走来,国庆节是一抹光辉的记忆;刘:...
最近小学国庆节活动方案,资料大...   小学国庆节活动方案:国庆活动方案  一、 活动背景  少先队是我们少年儿童的先锋队,其“文化育人...
如何使用租用的云服务器实现神经... B站教学视频:https://www.bilibili.com/video/BV1jA...
各个商场促销活动总汇,资料大全...   国庆黄金周快到了,昨日,各大百货商场纷纷抛出了节日促销信息。记者挨着逛了一圈,替市民“绘制”了一...
商城国庆节促销活动方案,“新”...   活动时间:xx月xx日(周五)——xx月xx日(周日)  活动范围:某商场商城及八一店、某商场购...
最新或2023(历届)商场国庆...   一、活动目的:中秋节的活动已经结束,由于人们在节日期间走亲串友,家中的礼品类商品比较充足,因此在...
小红书图文笔记怎么发?小红书笔...   说到图文笔记,这可是小红书的一大利器。从大方向来说,这是小红书成功从...
数字中国看“浙”里丨太平鸟、实... 当前,数字经济已成为重组全国要素资源、变革经济格局的关键力量。中共中央、国务院印发的《...
Mysql的主从复制原理 MySQL 的主从复制依赖于 binlog ,也就是记录 MySQL 上的所有变化并以...
小学国庆节活动方案策划,庆祝国...   活动目的:庆祝国庆节  通过本次庆祝活动,培养队员热爱祖国,了解祖国的悠久历史,培养民族自豪感。...
最新或2023(历届)国庆节活...   活动目的:通过本次庆祝活动,培养中兴小学少先队员民族自豪感,调动每个学生积极参与的热情,真切感受...
最新或2023(历届)国庆节活...   一、活动内容  1、聚焦一个点:开展“寻找祖国的成长足迹”图片展,评选“我最喜爱的图片”。  2...
基于hessian和netty... 一:概述         对系统进行服务化改造,或者构建一个分布式系统,...
初识HTTP协议 文章目录一、HTTP协议是什么?二、Fiddler三、HTTP 请求 (Request...
幼儿园国庆节活动方案,给祖国妈...   活动时间:9月30日下午3:30  活动目的:  1. 幼儿和全体家长一起过节,体验节日的快乐。...
最新或2023(历届)小学生国...   活动目的:庆祝国庆节  通过本次庆祝活动,培养队员热爱祖国,了解祖国的悠久历史,培养民族自豪感。...
最新或2023(历届)学校国庆...   一、活动目的:  为庆祝新中国成立62周年,加强对学生的爱国主义和民族精神的教育,增长学生国情、...
基于echarts做地图 需求:地图加载数据,然后有个小飞机,飞的方向,...