用分支机构git rebase工作流程

时间:2014-07-26 16:09:18

标签: git github bitbucket

我从主人那里拿了一个分支X.我在努力。我不时地将它的一部分推送到服务器。然后采取主更改我在主人上重新分配我的分支X.我在这一步出错了,因为我把我的分支公开了吗?

在此之后,我将我的更改合并到我的本地主服务器中,并将其推送到服务器master和X.

我不得不为分支X做强制。 应该遵循的工作流程是什么? 我们应该同时在同一个分支X上工作吗?在这种情况下,我是否应该永远不会使用rebase?

1 个答案:

答案 0 :(得分:0)

让我们恢复发生的事情: 在推动你的分支X进行一些工作以掌握之后,你的git图看起来就像我理解的那样:

                   master (same as origin/master)
                    v
A------B------C-----F
              \
               D-----E
                     ^
                     X (same as origin/X)

你在主人之上重新设定了X:

                   master (same as origin/master)
                    v
A------B------C-----F
              \     \
               \     D'----E'
                \          ^
                 \         X
                  \
                   D-----E
                         ^
                      origin/X

这就是你遇到问题的地方:你不能再推X因为origin/XX分歧了。 (接受推送当地分支机构意味着重写origin/X历史记录,这可能会给与您合作的人造成大麻烦:))

在这种情况下我通常做的是将origin/X视为可转移的分支。如果我在本地重新定义X,我会使用不同的远程分支。你可以做的另一件事就是挑选或合并你想要的东西。