upstream branch
和remote tracking branch
之间有什么区别?
上游分支是远程跟踪分支跟踪的远程分支吗?
答案 0 :(得分:2)
我认为Git documentation总结得比我自己更好:
从远程跟踪分支中检出本地分支会自动创建所谓的“跟踪分支”(它跟踪的分支称为“上游分支”)。跟踪分支是与远程分支有直接关系的本地分支。如果你在跟踪分支上并输入git pull,Git会自动知道要从哪个服务器获取以及要合并到哪个分支。
远程跟踪分支,尽管单词remote
出现在其名称中,但实际上并不是远程的,它对于本地Git存储库来说是完全本地的。它的主要目的是作为遥控器上存在的实际分支的代理(例如GitHub,Bitbucket等)。大多数Git操作,例如涉及远程分支的git merge
,git rebase
等实际上将使用此(本地)远程跟踪分支。
上面的分支,如上面描述的模糊,是存在于repo上的实际远程Git分支。当其他用户拉出远程分支时,他们的本地Git将从该分支执行拉动,并更新(本地)远程跟踪分支。