获取跟踪分支的名称+远程名称

时间:2016-03-11 01:45:13

标签: git github

我希望发现一个git命令,它可以提供有关上游远程和分支名称的信息。

如果我跑

git branch

git branch -v 

既不告诉我这个本地分支跟踪哪个远程分支。 我正在寻找一个git命令,它可以告诉我最初由

确定的远程和远程分支名称
git push -u x/y

其中x是远程名称,y是分支

这有意义吗?

(如果跟踪多个远程分支会发生什么?我猜本地分支只能跟踪一个远程分支?)

3 个答案:

答案 0 :(得分:3)

您可能希望使用-vv命令的git branch开关。

这将打印本地分支机构的列表,其中包含更多信息,包括每个分支机构正在跟踪的内容以及您的本地分支机构是否位于前方,后方或两者(该命令无法与服务器联系,因此数字可能有误)

$ git branch -vv
* master 02d9483 [origin/master] sort by category
* test   56b413a just a test
* trackb d789ad2 [origin/trackb: behind 1] another test
  

如果跟踪多个远程分支会发生什么?我猜想本地分支只能跟踪一个遥控器吗?

我相信无法使用给定的本地分支跟踪多个远程分支。您可以通过编写自定义脚本来模拟此行为

答案 1 :(得分:3)

您可能需要使用以下git命令:

git remote show origin

这将为您提供所需的所有信息。

答案 2 :(得分:1)

  

如果跟踪多个远程分支会发生什么?我猜想本地分支只能跟踪一个遥控器吗?

由于可以在git中将多个遥控器添加到工作目录,我认为可以安全地说多个远程分支可以跟一个分支。

例如,请考虑本地存储库的以下配置:

git remote add origin_one [url_origin_one]
git remtoe add origin_two [url_origin_two]

然后,假设我们已在本地检出master分支,并希望推送更改。毫不奇怪,

git push origin_one master

git push origin_two master

将分别在origin_one和origin_two上将更改推送到master分支。

如果您想查看已设置的跟踪分支,可以使用-vv选项git branch

这将列出您的本地分支机构,其中包含更多信息,包括每个分支机构正在跟踪的内容以及您的本地分支机构是在前面,后面还是两者之间。