2013-07-17 134 views
0

在开发分支(newstuff)上工作时,我遇到了一种情况,我必须从我的(主)后面的提交中分支一个临时修订(quickfix)并将其推送到服务器。git如何合并单个提交中的新更改到另一个分支?

这很简单,工作正常,以便服务器运行quickfix分支。

我的问题是如何将所有更改(newstuff + quickfix)重新合并到master中,而不会遇到合并冲突。

不知道我是否应该做一个樱桃选择,或合并,并以什么顺序。

quickfix会更改一些尚未更改我当前(主)或我当前(newstuff)分支的行,因此quickfix中的实际更改不会导致任何合并冲突。

一张图片可以帮助:我的git回购看起来像这样(AAAAA是共同的祖先)

aaaaa 
bbbbb --> xxxxx <== quickfix 
ccccc <== master 
ddddd 
eeeee 
fffff 
ggggg <== newstuff 

回答

1

就合并它们以任意顺序

# v1 
$ git checkout master 
$ git merge quickfix 
$ git merge newstuff 

# v2 
$ git checkout master 
$ git merge newstuff 
$ git merge quickfix 
0

在你想要一些提交这样的情况下,被添加/推送到主人,你可以去挑选樱桃。

它会允许你添加只有这是有用的提交。

AFAIK,您可以执行以下命令:从测试/的quickfix分支

  • git checkout master(切换到主分支
  • git cherry-pick <commit ID>(只拿起那个承诺要采取ID)
  • git log(要检查特定提交ID是樱桃采摘或不。

检查了这一点,它可能工作。:)

相关问题