我有两个(私有)功能分支正在开发中。
a -- b -- c <-- Master
\ \
\ d -- e <-- Branch1
\
f -- g <-- Branch2
在这些分支工作了一段时间后,我发现我需要在Branch1中从Branch2中进行更改。我想将Branch2中的更改重新基于Branch1。最后,我想谈几点:
a -- b -- c <-- Master
\
d -- e -- f -- g <-- Branch1
我非常确定我需要将第二个分支基于第一个分支,但我不完全确定正确的语法以及应该签出哪个分支。
这个命令会产生想要的结果吗?
(Branch1)$ git rebase --onto Branch1 Branch2
我是否误解了这个问题?我的直觉是使用rebase's -on flag,就像这样:
git rebase --onto branch1 master branch2
之前变基:
* 6263580 (HEAD -> branch2) add g
* c802c88 add f
| * c80cfb0 (branch1) add e
| * aea5708 add d
| * 2e522fe (master) add c
|/
* 0613527 add b
* e2a0c4d add a
后变基:
* 7f6a363 (HEAD -> branch2) add g
* 4cbab60 add f
* c80cfb0 (branch1) add e
* aea5708 add d
* 2e522fe (master) add c
* 0613527 add b
* e2a0c4d add a
这使得哪组提交被基于什么进行重设变得明确而明确
我是否误解了这个问题?我的直觉是使用rebase's -on flag,就像这样:
git rebase --onto branch1 master branch2
之前变基:
* 6263580 (HEAD -> branch2) add g
* c802c88 add f
| * c80cfb0 (branch1) add e
| * aea5708 add d
| * 2e522fe (master) add c
|/
* 0613527 add b
* e2a0c4d add a
后变基:
* 7f6a363 (HEAD -> branch2) add g
* 4cbab60 add f
* c80cfb0 (branch1) add e
* aea5708 add d
* 2e522fe (master) add c
* 0613527 add b
* e2a0c4d add a
这使得哪组提交被基于什么进行重设变得明确而明确