关于git:git-教程-git-cherrypick-命令

简介

在git治理的工程中,不可避免的存在多个分支,比方风行的gitflow就划分为很多的分支,那么就会有代码的合并。个别代码的合并分为两种:一种是整个分支的合并,一个是筛选局部的commit来合并。本文介绍的就是筛选局部的commit来提交的指令git cherry-pick。

git cherry-pick根底用法

筛选一个commit-id合并

git cherry-pick commit-id
  • 留神:合并过去的commit-id将会变掉,产生一个新的commit-id,跟原来的不在雷同

筛选多个commit-id合并

git cherry-pick commit-idA commit-idB

筛选间断的多个commit-id合并

git cherry-pick commit-idA..commit-idB
  • 该指令是将从commit-idA开始到commit-idB之间的所有commit-id提交记录都合并过去,须要留神的是,commit-idA必须比commit-idB提前提交,也就是说在被筛选的分支上,先有的commit-idA,而后才有的commit-idB

git cherry-pick高级用法

  • 应用下面的指令基本上能够玩转很大部分的场景,然而总有一些咱们料想不到或者绝对不是很丝滑的场景

合并抵触

  • 在理论合并的过程中,总有一些抵触的状况,遇到这些状况下,该如何应用cherry-pick的组合命令来解决问题?
  • 首先在应用cherry-pick时,如果遇到了代码抵触,其实合并过程会进行,须要应用其余的形式来持续对应的操作

持续合并–continue

  • 第一步:须要合并人解决对应的抵触文件,而后提交到暂存区
git add . 
  • 第二步:应用上面的命令继续执行
git cherry-pick --continue

放弃合并,回归原始状态–abort

  • 应用以后的指令,合并的动作暂停,并且回归到操作前的样子
git cherry-pick --abort

放弃合并,保留状态 –quit

  • 应用以后的指令,会保留车祸现场,退出cherry-pick
git cherry-pick --quit

联结应用的命令

-e,–edit

  • 应用以后指令,会关上编辑器,让用户编写信息

-n,–no-commit

  • 只更新工作区和暂存区,不产生新的提交

-x

  • 在提交信息的开端追加一行(cherry picked from commit …),阐明这个提交是如何来的

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理