首页 > 解决方案 > 使用 `git branch -r` 看不到推送的分支

问题描述

我从github克隆了一个 git 存储库,创建了一个新分支branch1,在其中提交了一些更改,然后将新分支推送到远程gitlab存储库。branch1然后从named创建另一个分支branch2,并推送到远程 gitlab repo。现在,当我使用时,git branch -r我只看到branch1. 但是,如果我将远程 gitlab 存储库克隆到另一个文件夹中,我可以看到两个分支。

当我第一次推送到远程存储库时,我也观察到,例如只branch1被推送,但没有master分支。

还有一个观察,我可以branch2在我的 gitlab 帐户中在线查看。

我真的很困惑为什么会发生这种情况。非常感谢任何帮助。

标签: gitgithubgitlab

解决方案


根据您的配置,git push在不指定分支的情况下可以用不同的方式解释,无论是对所有分支的全局推送,还是对当前签出分支的窄推送,等等。

检查您的配置以git config -l获取push.default条目。您可以在可能的模式之间进行选择,请查看文档。(simple自 git 2.0 以来是默认设置,但在此之前是matching

要设置它,只需执行git config --global push.default <yourPickedMode>

另外,请记住,git branch -r不会直接检查远程分支,而是检查它们的本地引用。如果需要,请务必git fetch事先让它们与您的远程仓库同步)


推荐阅读