git branch --track vs -u difference

时间:2016-06-16 16:52:47

标签: git git-branch

我有一个本地分支,我想链接到远程分支。因此,当我git pull时,它将自动使用链接的远程分支

我尝试使用git branch --track origin/branchname 但它做了一个奇怪的事情,并创建了一个名称origin / branchname的标签 git pull仍然没有自动选择链接分支

另一方面git branch -u origin/branchname确实有效,git pull自动选择正确的分支

--track-u的差异是什么?

1 个答案:

答案 0 :(得分:1)

git branch命令(在我看来,无论如何)都有太多不同的东西。

特别是,你可以要求它创建一个分支 - 一个新的分支名称,即;请参阅What exactly do we mean by "branch"? - 使用该新名称的各种设置。

您也可以要求它修改 现有的分支,这是您想要做的。 -u--set-upstream-to选项可以执行此操作。

--track选项用于创建新分支:

  

我尝试使用git branch --track origin/branchname,但它做了一件奇怪的事情并创建了一个名为origin/branchname的标签

更具体地说,它创建了一个名为origin/branchname本地分支。通常,只要您看到origin/fooorigin/masterorigin/whatever,这些就是远程跟踪分支(请参阅链接的问题)。使用这样的名称创建本地分支只会让事情变得混乱。 ( Git 不会有任何麻烦,只会让人感到困惑。:-))