为什么远程分支未显示在" .git \ refs \ _dotes / origin \"文件夹?

时间:2017-07-09 14:45:12

标签: git

在我的测试github repo中,我的所有远程分支都显示在.git\refs\remotes\origin\文件夹中。像这样:

enter image description here

但是我刚检查了另一个非玩具仓库,在该文件夹中找不到所有远程分支。像这样:

enter image description here

但是git remote show origin确实显示了很多远程分支。我仍然可以创建新的本地分支来跟踪那些远程分支。

为什么?

1 个答案:

答案 0 :(得分:2)

Git具有将单独的ref文件打包到单个文件中的功能,以提高性能并降低存储成本。打包引用时,它将不再作为refs文件夹中的单独文件存在。

  

当传统的$ GIT_DIR / refs目录层次结构中缺少引用时,它将在此文件中查找并在找到时使用。

您可以使用git pack-refs command打包参考文件。