Git合并来自同一分支的先前提交

时间:2018-06-15 00:40:12

标签: git version-control git-merge

目前我的状态是

A-B-C

我想要的是

A-B-C-D

,其中 D = A + C(同时采取两种变化)

我尝试了樱桃采摘A,但它没有任何提交,工作树干净。

2 个答案:

答案 0 :(得分:1)

即使是同一个分支,您也可以使用git cherry-pick将以前的版本应用于HEAD版本。

因为当你提交A,时,git显示“没有提交,工作树清理”的原因是因为提交A上的更改与提交{{1}相同}} 即可。您可以通过以下命令仔细检查:

C

两个提交之间不会有任何差异。

并且您无需添加新的提交git diff <commitA> <commitC> ,因为提交D已满足您的要求。

或者,如果要根据提交C重置为提交A或新版本,则可以改为使用A命令:

  • 使用git reset直接发送提交git reset --hard A的版本;
  • 默认使用A(或git reset --soft A使用git reset A选项),--mixedgit stash手动解析coflict并保留所需的版本提交git pop

答案 1 :(得分:0)

您已经同时进行了AC的更改吗?因此,如果您当前的状态是A-B-C,并且您希望它是A-B-C-D,其中D = A + C,那么您已经拥有AC的情况就没有意义了在您的状态。

因此,即使您正在采摘樱桃,也没有“改变”。

我希望能回答您的问题:)