Git 远程分支未显示在“中”;吉特分行-r";
我一直在推到一个远程Bitbucket存储库,最近一位同事将他创建的一个新分支推到了同一个存储库 我正在尝试获取他上传的更改Git 远程分支未显示在“中”;吉特分行-r";,git,Git,我一直在推到一个远程Bitbucket存储库,最近一位同事将他创建的一个新分支推到了同一个存储库 我正在尝试获取他上传的更改 $ git branch -a * master localbranch1 localbranch2 remotes/origin/master $git分行-r 来源/主要 在Bitbucket的web UI中,我可以看到他所做的分支。我该怎么做 下一次尝试: $ git fetch bitbucket Password for 'https://xxxxx
$ git branch -a
* master
localbranch1
localbranch2
remotes/origin/master
$git分行-r
来源/主要
在Bitbucket的web UI中,我可以看到他所做的分支。我该怎么做
下一次尝试:
$ git fetch bitbucket
Password for 'https://xxxxx@bitbucket.org':
From https://bitbucket.org/user/repo
* branch HEAD -> FETCH_HEAD
如果他创建的分支被称为new\u branch\u b我是否应该看到以下内容
$ git branch -r
origin/master
origin/new_branch_b
第三次尝试:
$ git remote update
Fetching bitbucket
Password for 'https://xxxxx@bitbucket.org':
From https://bitbucket.org/user/repo
* branch HEAD -> FETCH_HEAD
$ git branch -r
origin/master
第四次尝试:
[remote "bitbucket"]
url = https://user@bitbucket.org/user/repo.git
我调用了远程bitbucket
,而不是origin(至少我记得是这样;我刚才设置了它)
第五次尝试:
我根据以下内容更新了Bitbucket远程配置:
$git config-e
对大多数人来说,这将被称为起源:
[remote "origin"]
url = https://user@bitbucket.org/user/repo.git
fetch = +refs/heads/*:refs/remotes/origin/*
后来,
$ git remote update
Fetching bitbucket
Password for 'https://user@bitbucket.org':
remote: Counting objects: 48, done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 35 (delta 21), reused 0 (delta 0)
Unpacking objects: 100% (35/35), done.
From https://bitbucket.org/user/repo
* [new branch] branch_name1 -> origin/branch_name1
* [new branch] branch_name2 -> origin/branch_name2
。。。。等等
我认为
git-fetch-origin
也适用于git-remote-update
更新您的远程设备,如果您还没有这样做:
$ git remote update
$ git branch -r
remote
部分还指定提取规则。您可以在其中添加类似的内容,以从远程获取所有分支:
fetch = +refs/heads/*:refs/remotes/origin/*
(或将原点
替换为比特桶
)
请在这里阅读:我也有同样的问题。似乎最简单的解决方案是删除远程服务器,读取它,然后获取。如果使用
--depth
参数进行克隆,它将.git/config
设置为不获取所有分支,而只获取主分支
您只需省略参数或从中更新配置文件即可
fetch = +refs/heads/master:refs/remotes/origin/master
到
不幸的是,
git branch-a
和git branch-r
没有显示所有远程分支,如果您没有执行“git fetch”
git remote show origin
始终工作稳定。另外,git show ref
显示git存储库中的所有引用。但是,它的工作原理与git branch命令类似。很酷,但是使用refs/remotes/bitbucket/*
而不是refs/remotes/origin/*
可能更有意义。谢谢,注意到了命名的一致性。不过,将bitbucket更改为origin可能更有意义!约定和所有这些:)git-fetch-origin
完成了这项工作这修复了我在git中持续数周的分支问题。突然,所有git远程更新的东西都开始工作了。谢谢出于某种原因,对我来说,它看起来像:fetch=+refs/heads/master:refs/remotes/origin/master
。将master
替换为*
修复了我的问题。如果将浅层克隆转换为不允许的克隆,这非常有用。@kan您知道为什么有时会发生这种情况吗?当git克隆一个项目时,git克隆
。我不记得对我的本地git做过什么特别的事情。@dotnetCarpenter不确定。。。从来没有意外地发生在我身上。克隆
是否可能被中断然后恢复?或者其他什么东西同时访问了repo?我在Win上使用GitHub客户端,有时它不会更新远程分支。第一行“git远程更新”工作起来很有魅力。Easy&cleanaftergit remote update
我可以在UI中看到新的分支。ThanksIt没有帮助。我想我已经成功地让aleady获取了分支,但只需要看到它与git branch-r
一起列出。上面写着“选项-r导致列出远程跟踪分支,选项-a显示本地和远程分支”git remote update
获取git remote-v
中列出的所有远程设备的所有分支。运行此操作后,我能够运行git checkout origin/master
,然后将分离的头分支到我的主分支git branch master;git checkout master
花了很多时间来寻找这个答案。这样做没有任何问题。谢谢。:)对我来说也很有用,很奇怪,这解决了它git-remote-v
会显示你的遥控器,这样你就可以获得url,git-remote-rm-origin
会删除它,git-remote-add-origin
会重新添加它。这对我很有用。我有一个git子模块,不知何故,除了主模块之外,它并没有获取任何远程分支。删除并再次添加它解决了这个问题。对我来说很有效,但现在我得到了一个警告警告:忽略断开的引用/遥控器/原点/头部
谢谢!您的答案实际上很容易解决问题,而且似乎是正确的解决方法。但是您应该添加配置文件在.git/config
中,这样人们就可以找到它。这正是我的问题。非常感谢!
fetch = +refs/heads/master:refs/remotes/origin/master
fetch = +refs/heads/*:refs/remotes/origin/*