8

在我的服务器上,我托管了一些我正在处理的裸 git 存储库。我想在我的网站上显示有关每个存储库的一些基本统计信息;现在,假设我想做一些简单的事情,比如列出存储库中的所有文件。在非裸 git 存储库上,这可以通过

git ls-files

但是对于裸存储库,这个(以及大多数其他 git 命令)不起作用。我确信可能有一种简单的方法来执行这个特定的命令,但我可能想为不同的存储库显示一些复杂的/项目特定的统计信息,所以我真的在问是否有办法执行任何/所有 git裸存储库上的命令,而不必进行临时克隆或类似的复杂操作。我怀疑我需要设置一些命令参数,但我还没有弄清楚是哪一个。

4

1 回答 1

13

你可以运行这个:

git ls-tree -r HEAD --name-only

显然,您必须指定分支或引用,因为在裸存储库中没有工作树或索引。

我不知道其他命令,但实际上您可以在裸存储库中执行大部分命令,但那些需要工作树的命令。

于 2012-07-08T07:27:35.417 回答