无法使用Git检出其他分支

3
我正在分支 3 上工作,但我的团队开始在分支 4 上工作。当我尝试切换到分支 4 时,无法找到它。"git branch -a" 命令只显示了分支 3。
有人有什么想法吗?
谢谢您的回复。
2个回答

4

我偶尔会遇到这个问题。首先尝试使用git fetch确保您在本地拥有所有上游分支的列表。

如果您在使用fetch时遇到问题,请查看您本地repo中的.git/config文件,它应该有一个类似于以下内容的部分:

[remote "origin"]
        url = <repo uri>
        fetch = +refs/heads/*:refs/remotes/origin/*

谢谢?我不知道为什么第一次它不起作用,但现在它可以了。我还有一个问题,为什么会出现这个问题? - medlamine Semassel
1
@medlamine Semassel 你确定在执行 git branch -a 命令之前已经执行了 git fetch 命令吗?当你执行 git branch -a 命令时,列出的信息存储在你的本地仓库中(包括 remotes/origin/<some_branch> 条目)。如果你的同事推送了分支4,但你在执行 git branch -a 命令之前没有执行 git fetch 命令,那么你的本地仓库中就没有关于该分支的任何信息。只有在第一次执行 git fetch 命令后,该分支才会出现。而且当你执行 git fetch 命令时,你应该在 shell 输出中看到你获取了一个新的分支: * [new branch] some_branch -> origin/some_branch - Alderath

-1

我尝试了:

git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
git fetch origin

之前不行,刚刚我重复了一遍,现在可以了。


1
更新了我的回答,请仔细检查您的配置文件。 - TreyE

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接