![](/img/trans.png)
[英]How do I make a new local branch track the same remote branch as the local branch it's created from?
[英]Git - How to track a remote branch that you created from a local branch?
這是場景。
我在分支my_new_branch中有一系列提交
我想將這個分支作為一個不同的名稱推送到遠程倉庫並跟蹤它。
如果我做:
git push origin my_new_branch:different_name
它把分支推得很好。
但是,如果我留在my_new_branch並進行另一次提交,如果我這樣做的話
git push
它說“一切都是最新的”
此外,如果我查看.git / config,我可以看到它沒有設置跟蹤分支。
我當然可以這樣做
git push origin my_new_branch:different_name
再次,但我如何讓它跟蹤?
如果我做
git checkout -b my_new_branch origin/different_name
它抱怨分支名稱已經存在。
謝謝!
正如您所提到的,“ 如何使現有的git分支跟蹤遠程分支? ”這一問題表明可以為本地分支設置上游分支(推送的分支)(自Git1.7.0起)。
git branch --set-upstream my_new_branch origin/different_name
取代:
git config branch.my_new_branch.remote origin
git config branch.my_new_branch.merge refs/heads/different_name
默認情況下, git push
使用特殊的refspec' :
'
特殊refspec
:
或+:
允許非快進更新)指示git推送“匹配”分支 :
對於本地端存在的每個分支,如果遠程端已存在同名分支,則更新遠程端。
如果未找到顯式refspec,則這是默認操作模式(既不在命令行上也不在相應遠程文件的任何Push行中)。
因此你的麻煩是“ git push
”(沒有參數)。
如果你在推動時記得使用-u,git會自動為你設置。
-u, - set-upstream
對於每個最新或成功推送的分支,添加上游(跟蹤)引用,由無參數git-pull(1)和其他命令使用。 有關更多信息,請參閱git-config(1)中的branch..merge。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.