首页 » 信息技术 »

git cherry-pick的使用

2021年1月3日 / 1次阅读
Git

git cherry-pick是一个浪漫的名称,把branch想象成树枝,上面的每个commit都是一个cherry,cherry-pick就是摘取一个commit的意思。

使用场景:当某一个分支,仅仅只需要另外一个分支里的某些commit的时候。(支持不同代码库之间的pick操作)

如果一个分支,需要另一个分支的全部commit,使用git merge,直接合并即可。

$ git cherry-pick <commit_id>

将制定的commit应用到当前分支,此时当前分支会自动产生一个新的commit,id肯定不同,但是comments是相同的。

$ git cherry-pick -e

edit,可以在cherry-pick的时候修改comments。

$ git cherry-pick -n

no-commit,将cherry-pick过来的代码,放在当前分支的staged区域,不自动commit。这个操作在向production分支pick的时候,会很有用,可以人工check。

$ git cherry-pick -x

在提交信息的末尾追加一行(cherry picked from commit ...),方便以后查到这个提交是如何产生的。

此命令还可以同时转移多个提交。

$ git cherry-pick <commitA> <commitB>

将两个commit同时转移到当前分支,这会在当前分支自动生产两个新的commit。

$ git cherry-pick <commitA>..<commitB>

上面的命令可以转移从 A 到 B 的所有提交(不包含A)。它们必须按照正确的顺序放置:提交 A 必须早于提交 B,否则命令将失败,但不会报错。

$ git cherry-pick <commitA>^..<commitB>

同上,唯一的区别是包含A。

当cherry-pick过程中发生代码冲突时,解决的方式跟其它git命令造成代码冲突的解决方法基本一样:

git cherry-pick --continue
git cherry-pick --abort
git cherry-pick --quit

abort和quit的区别是:abort放弃,回到cherry-pick前的状态;而quit不会回到操作前的样子。

本文链接:https://www.maixj.net/ict/git-cherry-pick-24291

相关文章

留言区


前一篇:

-->只要几分钟回答问卷,就能轻松赚现金!

栏目精选

云上小悟,麦新杰的独立博客

Ctrl+D 收藏本页

栏目


©Copyright 麦新杰 Since 2014 云上小悟独立博客版权所有 备案号:苏ICP备14045477号-1。云上小悟网站部分内容来源于网络,转载目的是为了整合信息,收藏学习,服务大家,有些转载内容也难以判断是否有侵权问题,如果侵犯了您的权益,请及时联系站长,我会立即删除。

go to top