Git error“fatal:XXX不是一个提交,不能从它创建分支YYY

xurqigkl  于 2023-05-05  发布在  Git
关注(0)|答案(2)|浏览(336)

我正在尝试将一个分支从一个远程仓库 checkout 到一个本地分支,收到了上面的错误。
对于那些想引导我的人:Why is it not a commit and a branch cannot be created from it?,那么我已经尝试过抓取,甚至git fetch --all
准确地说,我不能 checkout Github仓库上的任何分支,这不是我跟踪的主要分支,让我们称之为dev
所以,我可以这样做:

git checkout origin/dev -b my_own_dev_env

但我不能检查任何其他分支,甚至

git checkout origin/master -b master

在这种情况下我收到
“致命错误:'origin/master'不是提交,无法从它创建分支'master'”
编辑:当克隆到一个新目录时,我可以像往常一样执行所有的git操作。所以我想知道在本地副本中可能会出现什么问题,从而阻止git命令正常工作?

qij5mzcb

qij5mzcb1#

首先通过执行以下命令检查是否已获取所有分支。

git fetch --all

检查本地是否存在分支名称

git branch -a

执行命令跟踪远程分支并在本地创建一个

git checkout -t origin/<Branch Name>
mcvgt66p

mcvgt66p2#

您的遥控器的提取配置可能有限。请参阅.git/config为您的远程,它可能有类似以下内容。

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

因此,git fetch只会得到main。要修复,您可以将其更新为

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

相关问题