正在不断开发branchA
并创建新的提交。也许20次提交之前,我们创建了一个branchB
,其功能应该在以后完成。
现在,我们正在branchB
开始工作,我是否应该将branchA
更改为branchB
?
如果是,我会在几天内做同样的事吗?
混淆的根源在于branchA
和branchB
都在不断发展,并且新的提交已经完成,因此我不确定是否将branchA
合并到branchB
每一天都是个好主意。
答案 0 :(得分:1)
通常所有开发者都应sync
使用default-branch (normally master)
分支。由于branchA
和branchB
正在不断发展,如果您不需要进行branchA
更改,请不要将其合并。
完成branchA
功能并与default-branch
(主控)合并后,将master
分支拉入branchB
(将获得branchA
次更改。< / p>
Rebase:如果您想将branchA
经常拉入branchB
,那么重新定位将是不错的选择。
$ git checkout branchB
$ git rebase branchA # keep branchB changes top
答案 1 :(得分:1)
我会去:
git checkout branchB
git rebase branchA
将执行合并并将branchB
中的所有提交置于branchA
中的所有提交之上。这里解释得非常好:https://git-scm.com/book/en/v2/Git-Branching-Rebasing
但有一点需要注意:如果有几个人在branchB
工作,那么你必须同意你做退缩的时间,因为你必须{{1你的rebased分支到遥控器,可能导致:
push --force
尝试branchB
(重新绑定)时,将对本地pull branchB
进行了一些提交的开发人员置于尴尬境地。为了与分支机构保持同步,本地提交必须被挑选到新的origin