Git 如何查找当前分支跟踪的分支

Git 如何查找当前分支跟踪的分支,git,Git,我试图弄清楚如果在当前分支中执行git fetch,将获取哪个分支,以及如何更改它(通过git remote的一些变体或编辑.git/config文件) 从哪个远程分支git pull获取内容?它是否与git fetch从中获取内容相同?是否有一个git命令可以显示所有这些信息 为本地分支使用设置跟踪的远程分支 git branch --set-upstream <local_branch> <remote_branch> 但是,git fetch获取配置的远程服务器的

我试图弄清楚如果在当前分支中执行
git fetch
,将获取哪个分支,以及如何更改它(通过
git remote
的一些变体或编辑
.git/config
文件)


从哪个远程分支
git pull
获取内容?它是否与git fetch从中获取内容相同?是否有一个git命令可以显示所有这些信息

为本地分支使用设置跟踪的远程分支

git branch --set-upstream <local_branch> <remote_branch>
但是,
git fetch
获取配置的远程服务器的所有分支

如果您有多个遥控器(例如
原点
其他

将在

git fetch origin
将获取
原点

要找出正在跟踪的远程分支,请打开
.git/config
并搜索如下条目

[branch "mybranch"]
  remote = <remote_name>
  merge = <remote_branch>
这告诉您,在您的本地回购中,在
refs/heads
下存储的分支将被提取并存储在
refs/remotes/origin/

如果您在
mybranch
上并键入
git fetch
,将获取
的修订版(在
[remote]
部分中指定)。如果键入
git pull
,在获取
的修订版后,
的分支
将合并到
mybranch


其他信息可以在和的手册页上找到。

我正在查找有关远程分支的信息,您的最后一段(建议查看.git/config)非常有用。你知道[remote“origin”]fetch=+refs/heads/*:refs/remotes/origin/*是什么意思(在my.git/config中)?
git fetch
是否将格式为origin/refs/heads/xyz的所有分支带入本地远程跟踪分支refs/remotes/origin/xyz?它是针对所有xyz还是仅针对当前分支(其中发出了
git fetch
)发生的?这很好。一个小编辑:如果您在
mybranch
上并键入
git fetch
,则将获取[remote]部分中指定的
版本。我认为这是正确的,对吧?我不能因为某种原因说
@eckes
。它将自动删除!:-(
git fetch origin
[branch "mybranch"]
  remote = <remote_name>
  merge = <remote_branch>
[remote "origin"]
  fetch=+refs/heads/*:refs/remotes/origin/*
  url=<url_of_origin>