我有一个过时但干净的test
分支,我以master
为基础。解决了一些冲突之后,我成功完成了一个变基过程。但是,git status
现在告诉我分支test
和origin/test
已经分开,and have 37 and 15 different commits each, respectively.
我想在重新设置基准后同步分支,因此我打算push
,但现在还不确定,我不理解“ 37和15个不同的提交”背后的逻辑。
下一步是pull
还是push
?
答案 0 :(得分:3)
您想强行推您的test
分支。
在重新设置基准之前,您有这种情况:
--o-- 21 more commits --o master
\
o-- 13 more commits --o test and origin/test
重新设置基准后,您会遇到以下情况:
--o-- 21 more commits --o master
\ \
\ o-- 13 more commits --o test
\
o-- 13 more commits --o origin/test
也就是说,您将origin/test
留在了后面,因为您在master
的顶部建立了自己的分支。 master
有22个提交,而您在顶部构建了15个提交,则有37个提交。 origin/test
保持其15次提交。这就是为什么git status
报告“ 37次和15次不同的提交”的原因。
在这一点上,您最有可能希望发布test
分支,即将其推送到远程存储库。您必须强制按下,因为新的头(test
)不再是origin/test
的后代。