正如我所看到的,git --track
和--set-upstream-to
修改了一个分支,因此它变成了一个跟踪(或上游)分支。但我无法理解的细微差别在哪里。该--track
记录“远程分支轨道地方”:git“--track”和“--set-upstream-to”有什么区别?
$ git checkout foo -b
$ git branch --track origin/retarget
Branch origin/retarget set up to track local branch foo.
$ cat .git/config
[branch "origin/retarget"]
remote = .
merge = refs/heads/foo
虽然--set-upstream-to
纪录“的本地分支轨道远程分支”:
$ git checkout foo -b
$ git branch --set-upstream-to origin/retarget
Branch foo set up to track remote branch retarget from origin.
$ cat .git/config
[branch "foo"]
remote = origin
merge = refs/heads/retarget
这是什么两者之间的区别?我确信“跟踪分支”是一个简单的概念,其中额外的upstream
分支内的指针跟踪head
指定分支在remote
存储库中的位置。但似乎更复杂?