簡體   English   中英

Git - 如何跟蹤從本地分支創建的遠程分支?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM