热搜:fiddler git ip ios 代理
历史搜索

记录 git cherry

游客2024-09-18 07:53:02
目录文章目录
  1. 转移多个提交
  2. 代码冲突
  3. 结语

记录 git cherry 1

我们开发的项目往往都是多分支的代码仓库,经常会遇到将一个分支的代码转移到另一个分支的情况。如果遇到只需要将一个提交或某几个提交转移到另一个分支的情况,就可以用我们的cherry-pick了。

cherry-pick翻译过来就是挑选樱桃,顾名思义,就是一个一个挑选的意思。我们可以使用cherry-pick将指定的commit 提交应用于其他分支。具体命令如下:

git cherry-pick <commitHash>

这个命令会将指定的提交commitHash,应用于当前分支(目标分支)。并且会在当前分支产生一个新的commitHash不一样的提交。

当前,我们也可以直接使用分支名feature来转移该分支的最新提交。如下代码标识将feature分支的最近一次提交,转移到当前分支。

git cherry-pick feature

转移多个提交

还有一种情况就是,你在一个错误的分支上一直写呀写呀写,提交了好几个commit,最后要合并代码的时候发现写到别的分支上了,这时候我们要一次转移多个提交,我们该怎么做呢?

git cherry-pick <HashA> <HashB>

以上命令会将HashAHashB两个提交应用到当前分支,并且在当前分支生成两个对应的新提交。

如果想要转移连续的几个提交,可以使用下面的语法。

git cherry-pick A..B

代码冲突

执行cherry-pick的过程中,也会有发生代码冲突的情况,这种情况下,cherry-pick会停下来,需要让我们来决定如何继续操作。

1.--continue 我们将代码冲突解决后,将修改的文件重新加入暂存区(git add .),我们使用下面的命令,让cherry-pick继续执行。

git cherry-pick --continue

2.--abort 如果代码发生冲突后,发现很难解决,需要放弃合并,回到操作前的样子,则可以使用下面的命令:

git cherry-pick --abort

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

git cherry-pick --quitj

结语

以上就是 git cherry-pick 基本用法,但是在工作中基本就够用了,然而cherry-pick还有一些其他比较高级的用法,感兴趣的小伙伴可以继续深入研究一下。