44

我想访问一个裸 git 存储库,并且我想列出存储库中的所有文件。

在普通的 git 存储库上,我可以通过运行git ls-files.

示例输出:

$ git ls-files
README.md
file1.js
file2.js
file3.js
folder1/file4.js
folder2/file5.js

在一个裸露的 git 存储库中,这会默默地失败。它只是不返回任何文件(但成功退出):

$ cd my-bare-repository
$ git ls-files #returns nothing
$ echo $? #print exit code from previous command
$ 0

现在我知道我必须提供一个有意义的分支或 master 来显示。但是我如何才能真正获得我知道在我的存储库中的文件列表?

4

1 回答 1

71

您可以尝试列出文件的其他命令:

git ls-tree --full-tree -r HEAD

根据这个评论,命令git ls-tree裸仓库中工作。

于 2014-09-18T07:02:51.617 回答