git fetch
获取远程分支的原因是什么?
How do I check out a remote Git branch?
我所做的就是运行git fetch
-然后我看到
C:\ site \ blog> git获取 *大师
我希望看到类似的东西
C:\ site \ blog> git获取 *主来源/分支1来源/分支2
git fetch doesn't fetch all branches
我在接受的答案中运行命令
git config --get remote.origin.fetch
命令的输出是
+refs/heads/*:refs/remotes/origin/*
据我了解,这表明我不仅在跟踪主服务器,而且还在跟踪所有遥控器。
怎么了?我该如何解决?您无法git fetch
的原因是什么?为什么会坏?
运行git fetch -a
也不执行任何操作。
运行git branch -avv
可为我提供以下信息:
那git fetch
为什么不起作用?
答案 0 :(得分:1)
首先检查是否尚未提取这些分支:
git branch -avv
如果这些分支上没有新的提交,则git fetch
将不会获取任何内容。
还要检查这些分支是否确实在远程回购侧(origin
在git remote -v
中引用的分支)
为确保看到所有 个远程分支,可以将它们声明为本地分支,称为I do here。
答案 1 :(得分:0)
Track all remote git branches as local branches
for i in `git branch -a | grep remote | grep -v HEAD | grep -v master`; do git branch --track ${i#remotes/origin/} $i; done
这是错误的术语。它正在将远程分支跟踪为本地分支。
答案 2 :(得分:-1)
我不知道这是否可以算作一个完整的答案,但这就是我在日常工作中所使用的:
git fetch --all
获取所有分支
编写为了查看哪些分支是本地分支以及哪些分支具有“远程对应”,我使用
git branch -vv
如果分支描述(每个分支的一行都具有[origin / ....]之类的内容,它也具有一个远程分支,否则它只是一个本地分支)
如果我想查看所有配置的远程存储库(例如,在已经从某个地方克隆但又不记得从哪里克隆的新项目中),请检查是否同时设置了提取和推送存储库:
git remote -v