我有一个远程分支,作为拉取请求的基础。
我主要在另一个分支上工作,现在应该替换旧分支。
我尝试做一个 git push remote oldBranch -f
但那只是把我的最新本地 oldBranch
推送到 git 服务器而不是当前分支,无论我当前在哪个分支。
如何用我的本地分支替换远程分支?
编辑: 如果有人感兴趣,这就是我让它正常工作的方法:
git checkout oldBranch
git branch -m 'oldBranchToBeReplaced'
git checkout newBranch
git branch -m oldBranch
git push myrepo oldBranch -f
+
和--force
的唯一区别在于同时推送多个分支时。使用-f
会强制推送所有分支,而+
只会强制推送它所附加的 refspec,因此我同意+
通常是一个更好的习惯,尽管当只推送一个分支时没有任何区别,并且如果没有指定本地分支名称,则无法依赖默认推送。 - Jeff Puckett