Git 远程分支未显示在“中”;吉特分行-r";

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

我一直在推到一个远程Bitbucket存储库,最近一位同事将他创建的一个新分支推到了同一个存储库

我正在尝试获取他上传的更改

 $ 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&cleanafter
git 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/*