Git 存储库无法签出到现有分支

问题描述 投票:0回答:1

在我的 Git 存储库中,我有一个名为“client1”的分支,它也存在于远程存储库中。但是,当我尝试使用 git checkout client1 签出或切换到该分支时,遇到以下错误:

fatal: reference is not a tree: client1
NativeCommandExitException: Program "git.exe" ended with non-zero exit code: 128.

但对于其他一些客户端分支来说,它切换得很好。我尝试像这样在本地创建这个分支:

git checkout -b client1 origin/client1
git branch --set-upstream-to=origin/client1 client1

它确实有效,但我总是收到警告,我签出到这个分支

warning: refname 'client1' is ambiguous.
我想了解为什么会发生这种情况以及如何解决这个问题,我实际上正在使用 GitPython 自动切换到所有客户端分支的过程并获取他们的分支与特定文件的主分支存在差异,但是当我尝试签出此
client1
分支以及可能其他一些分支时,我收到此错误或有关此歧义的警告。我的问题是了解为什么我无法签出或切换到此分支,即使它存在于远程引用中,正如我用
git show-ref --heads | grep 'client1'
检查的那样。

如果有专家可以解释这是否与“不相关的历史记录”或某种配置错误有关,我将不胜感激。

该存储库正在被克隆为全新的。而我的

git config --global --list
只有最基本的:

user.name=SAY-MY-NAME
[email protected]
fetch.prune=true

关于分支的历史,client1分支是在几年前基于main创建的,我们随意执行

git merge main
对client1分支进行一些更改。因此,当然 client1 分支在 main 之前有更多提交,我想知道这是否是造成此问题的原因。


这里有运行命令的更多详细信息

git cat-file -p origin/client1; git cat-file -p origin/client1^{tree}
。这对于检查 Git 存储库中特定分支或提交的内容非常有用。

tree 07a8a9cf1c77ae9bf82ec27a66d2d29d880028cd
parent 44f13b1dea8d46a6cb75c0bc7eec381b2edbe341
author support-adv<[email protected]> 1689602681 -0300
committer support-adv<[email protected]> 1689602681 -0300

client1 - Update version manually IOS
040000 tree 0a871f58d94685e7c10c5a287374b983e8720e90    .fvm
100644 blob 18e95f252defc45e73c3a1f9d8a2a59216a45eea    .gitignore
040000 tree 22f59bec469873082fea408cd1a505b6402a6509    .vscode
100644 blob 3862e40bfbc0450aa40c247472c07eb306c8b2c1    README.md
040000 tree 474a601150e28bdbc37e8fba292176a803aa914a    ReleaseV5
100644 blob 5e948bb1a39a59a539d24a6ac450f71d70ab51ca    diretrizes.md
040000 tree 633a38f482975801a7549a15d9039d0d9a1672cc    smart
git github version-control
1个回答
0
投票

它很有用,但我总是收到警告,我结帐到这个分支

warning: refname 'client1' is ambiguous.

这意味着您有多个参考符合裸client1

便利规则
标准。

git for-each-ref '**/client1'
找到所有常见的嫌疑人,然后说
find .git -name client1
拾取
refs
树之外的任何克苏鲁插入物。

要查看便利逻辑正在选择哪一个,

git rev-parse --symbolic-full-name client1

© www.soinside.com 2019 - 2024. All rights reserved.