' - 上游'做什么?

问题描述 投票:230回答:2

--set-upstream做什么?

我试着通过阅读manual来理解它,但我并没有完全理解它。

git
2个回答
298
投票
git branch --set-upstream <remote-branch>

设置当前本地分支的默认远程分支。

任何未来的git pull命令(当前本地分支签出), 将尝试将<remote-branch>的提交引入当前的本地分支。


避免必须明确做--set-upstream的一种方法是 使用速记标志-u以及第一个git push如下

git push -u origin local-branch

这将自动设置任何未来推/拉尝试的上游关联。 有关详细信息,请查看此detailed explanation about upstream branches and tracking


为了避免混淆,git的最新版本弃用了这个有点模棱两可的--set-upstream选项,转而使用具有相同语法和行为的更详细的--set-upstream-to选项

git branch --set-upstream-to <remote-branch>

31
投票

当您按下遥控器并使用--set-upstream标志时,git将您要推送的分支设置为您正在推动的分支的远程跟踪分支。

添加一个远程跟踪分支意味着git然后知道你将来在git fetchgit pullgit push时想要做什么。它假设您希望保持本地分支和它正在跟踪的远程分支同步并执行相应的操作来实现此目的。

你可以用git branch --set-upstream-togit checkout --track达到同样的目的。有关更多信息,请参阅tracking branches上的git帮助页面。

© www.soinside.com 2019 - 2024. All rights reserved.