这是不是 Find out which remote branch a local branch is tracking,如果我有多个遥控器,我可能在所有这些中都有“主人”。 git branch
返回master,但我不知道我所在的主分支是在remoteFoo还是remoteBar中。例如,我可能会这样做:
git clone someRepo.git
cd someRepo
git remote add anotherRemote otherremoteURL
然后git remote
显示
someRepo
anotherRemote
我可以git checkout -b master someRepo/master
或git checkout -b master anotherRemote/master
和git branch
在两种情况下都会说“主人”。我如何找回第一部分,“someRepo”或“anotherRemote”?
您认为我可以使用git remote show
,但它需要一个参数,即您想要信息的遥控器的名称。
$ git remote show origin
fatal: 'origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
$ git remote show
someRepo
anotherRemote
使用git branch
我可以看到当前的内容:
$ git branch
hold
* master
old-stuff
refactor
但git remote
输出中没有“*”。
答案 0 :(得分:8)
您可能需要尝试以下方法来详细查看信息。
git remote -v
git remote -v show origin
以下示例输出:
dmasi@:/var/www/pirate_booty$ git remote -v
origin git@bitbucket.org:dmasi/pirate_booty_calculator.git (fetch)
origin git@bitbucket.org:dmasi/pirate_booty_calculator.git (push)
dmasi@:/var/www/pirate_booty$ git remote -v show origin
* remote origin
Fetch URL: git@bitbucket.org:dmasi/pirate_booty_calculator.git
Push URL: git@bitbucket.org:dmasi/pirate_booty_calculator.git
HEAD branch: master
Remote branch:
master tracked
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git push':
master pushes to master (up to date)
答案 1 :(得分:3)
git status -sb
似乎很容易理解和记住。
-s
代表以短格式提供输出。
b
显示分支和跟踪信息。
答案 2 :(得分:1)
在类似问题here中回答:要通过当前分支跟踪远程分支,
git rev-parse --symbolic-full-name --abbrev-ref @{u}