好吧,我认为这是一个简单的git场景,我错过了什么?
我有一个master
分支和一个feature
分支.我做了一些工作master
,一些工作,feature
然后再做一些工作master
.我最终得到这样的东西(词典顺序暗示了提交的顺序):
A--B--C------F--G (master)
\
D--E (feature)
Run Code Online (Sandbox Code Playgroud)
我没有问题要git push origin master
保持远程master
更新,也没有git push origin feature
(当打开时feature
)为我的feature
工作维护远程备份.到目前为止,我们很好.
但现在我想在主人feature
的F--G
提交之上重新定义,所以我git checkout feature
和git rebase master
.还好.现在我们有:
A--B--C------F--G (master)
\
D'--E' (feature)
Run Code Online (Sandbox Code Playgroud)
问题:当我想要备份新的rebased feature
分支时git push origin feature
,推送被拒绝,因为树由于变基而发生了变化.这只能通过解决git push --force origin feature
.
我讨厌使用--force
而不确定我是否需要它.那么,我需要它吗?重新定位是否必然意味着下一个push
应该是--force
完美的?
这个功能分支不与任何其他开发者共享,所以我事实上 …
git ×1