0


git 常用命令 Cherry-pick

cherry-pick基础用法

git cherry-pick 125a1d    将提交125a1d应用于当前分支. 在当前分支会产生一个新的提交.
git cherry-pick bugfix    将分支bugfix应用于当前分支. 在当前分支会产生一个新的提交.

**场景1:提交

125a1d

应用到

master

分支**

1. git checkout master 
2. git cherry-pick 125a1d

8.2 cherry-pick多个提交

git cherry-pick 125a1d 125a2a    支持一次转移多个提交    
git cherry-pick A..B            转移一系列的连续提交(不包含A),提交A必须早于提交B,否则命令将失败,但不会报错    
git cherry-pick A^..B            转移一系列的连续提交(包含A)    

8.3 Cherry-pick配置项

git cherry-pick 125a1d -e    打开外部编辑器,编辑提交信息(-e,--edit)
git cherry-pick 125a1d -x    在提交信息的末尾追加一行(cherry picked from commit ...),方便以后查到这个提交是如何产生的
git cherry-pick 125a1d -s    在提交信息的末尾追加一行操作者的签名,表示是谁进行了这个操作(-s,--signoff)
git cherry-pick 125a1d -n    只更新工作区和暂存区,不产生新的提交(-n,--no-commit)
git cherry-pick -m1 125a1d  如果125a1d是一个合并节点,那么Cherry pick将失败,因为它不知应该采用哪个分支的代码变动。
                             -m告诉Git采用哪个分支的变动。1号父分支是接受变动的分支,2号父分支是作为变动来源的分支

8.4 cherry-pick过程中代码冲突

cherry pick操作过程中发生代码冲突,Cherry pick会停下来,让用户决定如何继续操作

1. 用户解决代码冲突
2. git add .                       将修改的文件重新加入暂存区
3. git cherry-pick --continue      让 cherry pick 过程继续执行

git cherry-pick --abort           发生代码冲突后,退出Cherry pick,回到操作前的样子
git cherry-pick --quit            发生代码冲突后,退出Cherry pick,但是不回到操作前的样子

8.5 Cherry-pick到另一个代码库

1. git remote add target [email protected]/testGit.git        1. 添加了一个远程仓库target
2. git fetch target                                            2. 远程代码抓取到本地
3. git log target/master                                    3. 获取要从远程仓库转移的提交"12fefsas"4. git cherry-pick "12fefsas"4. 进行cherry-pick

参考: git cherry-pick 教程

拓展:Git常用命令汇总

标签: git

本文转载自: https://blog.csdn.net/weixin_37646636/article/details/131446895
版权归原作者 张紫娃 所有, 如有侵权,请联系我们删除。

“git 常用命令 Cherry-pick”的评论:

还没有评论