24

我一直认为该.git/branches目录是用于遗留目的,并且 git 曾经使用该目录,但现在使用该.git/refs目录。这是真的?如果不是,那么该目录的用途是什么,因为我从未见过它被使用或引用过。

编辑

我正在使用 git 版本 1.7.3.4。

4

1 回答 1

20

.git/branches有用的gitrepository-layout文档中描述了现在“略微弃用”的使用:

分支:存储用于指定 URL 到git fetchgit pullgit push命令的速记的一种略微弃用的方法是将文件存储在branch/<name>中,并为这些命令指定名称来代替存储库参数。

在上面的评论中,问题是为什么有些人有这个目录而有些人没有。似乎在 2009 年引入了一个提交,默认情况下阻止了 git 创建.git/branches目录。然而,最近该更改被恢复(即意味着.git/branches git init等上创建),来自 Junio C. Hamano 的以下理由:

这样做没有足够的理由。我们不再更新.git/branches.git/remotes中的内容,但仍会从那里读取信息并将继续这样做。

此外,这在 t55 中打破了相当多的测试??系列。

于 2012-05-01T13:39:23.610 回答