我有一个包含许多分支的git存储库:git branch
列出了20多个分支。但是ls .git/refs/heads
只列出其中4个分支。这是怎么回事?
为了进一步调查此问题,我在一个空目录中创建了一个测试存储库,添加了一个文件,提交了更改并创建了一个新分支side
。现在git branch
给出:
* master
side
并且 ls .git/refs/heads
的结果为
master side
然而,在执行
git gc
之后,.git/refs/heads
中的文件会消失,但是git branch
仍然显示两个分支。Git从哪里获取这些信息?