恐怕这个问题已经在某个地方得到了回答,但我找不到它。
所以我想创建一个远程分支“newfeature1”来跟踪远程主服务器。 我希望如果我在本地存储库中跟踪 master 和 newfeature1 分支 我可以在 master 中更改一些内容,提交并推送,然后切换到 newfeature1 分支,执行 git pull 并在那里获得该更改。但这是行不通的。
这是我尝试过的:
创建远程分支
git push origin origin:refs/heads/newfeature1
强制它跟踪远程主机
git branch --track origin/newfeature1 origin/master
在本地跟踪远程分支
git checkout --track origin/webkit
切换到本地主机(跟踪远程主机):
git checkout master
修改一些文件和git commit -am "test" && git push
切换到newfeature1分支git checkout newfeature1
从远程 pull git pull
我本来希望得到我在 master 分支中所做的更改,但我猜远程分支不会自动从 master 更新,即使它正在跟踪它。
关于如何实现这一点有任何提示吗?
最佳答案
您不能让远程分支跟踪其他远程分支。您只能使用本地分支跟踪远程分支。我认为你已经把一些事情搞倒了。当您提交到本地主控并推送这些更改时,您的本地主控中已经有了这些更改,无需从另一个分支跟踪这些更改。如果您希望对 master 所做的更改位于本地分支 newfeature1 中,只需 checkout 该分支并 merge master
git checkout newfeature1
git merge master
无需将 newfeature1 推送到远程存储库,除非您确实想在与其他开发人员协作时共享该分支。保持本地化。
关于Git:创建一个跟踪远程master的远程分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9784361/