克隆UnrealEngine仓库后仅存.git文件夹及分支异常问题咨询
问题根因说明
克隆过程报错片段:
remote: Counting objects: 100% (20158/20158), done. remote: Total 3661983 (delta 20138), reused 20153 (delta 20137), pack-reused 3641825 Connection to github.com closed by remote host. Resolving deltas: 100% (2344882/2344882), done.
核心原因
克隆流程在拉取远程分支引用(refs)阶段触发远程连接断开错误,虽然后续解Delta步骤正常完成,但仅同步了远端的git对象库,没有拉取到任何远程分支的指针信息,导致仓库处于半完成状态。
各异常表现的对应逻辑
- 工作区仅存在.git文件夹:git未获取到任何分支的HEAD指针,无法判定需要检出哪个分支的文件到工作区,因此工作区保持初始化空状态。
git branch -a无任何输出:本地没有存储任何远程分支的引用记录,也没有创建过本地分支,git识别不到任何可展示的分支信息。git checkout master提示Switched to a new branch 'master':本地不存在master分支记录,也找不到远程origin/master的对应引用,因此git直接在本地初始化了一个全新的空master分支,而非切换到远端仓库对应的master分支。- Github Desktop分支菜单无法点击:Github Desktop检测到仓库无任何有效分支引用,因此分支选择功能被禁用。
修复方法
无需重新克隆整个仓库,本地已存储所有git对象,仅需补充拉取远程引用即可:
- 执行
git fetch origin拉取所有远端分支的引用记录 - 执行
git checkout Release切换到目标Release分支,工作区会自动检出对应版本的所有文件 - 执行
git branch -a验证分支列表正常,此时Github Desktop也会正常识别所有可切换分支。
内容的提问来源于stack exchange,提问作者uniqueid
相关产品推荐
相关产品推荐

