列出本地git仓库中的文件?

时间:2011-12-16 10:59:40

标签: git

我正在使用Sparkleshare,它使用Git在我的笔记本电脑和备份服务器之间同步文件。

现在我希望能够浏览我上传到服务器的文件和目录,但我不知道怎么做?

据我所知,Git使用某种特殊的文件层次结构而且我无法列出我的文件,对吗?

但是如何列出它们并浏览我的文件呢?

3 个答案:

答案 0 :(得分:501)

此命令:

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

列出了git repo正在跟踪的所有已提交文件。

答案 1 :(得分:308)

尝试此命令:

git ls-files 

列出存储库中的所有文件,包括仅暂存但尚未提交的文件。

http://www.kernel.org/pub/software/scm/git/docs/git-ls-files.html

答案 2 :(得分:1)

stackgit ls-tree --full-tree -r HEAD一次返回所有文件。对于具有成百上千个文件的大型项目,如果您对特定的文件/目录感兴趣,则可能会更方便地浏览特定的目录。您可以通过获取要浏览的目录的ID / SHA-1,然后使用git ls-files来实现。例如:

git cat-file -p [ID/SHA-1 of directory]

在上面的示例中,git cat-file -p 14032aabd85b43a058cfc7025dd4fa9dd325ea97 100644 blob b93a4953fff68df523aa7656497ee339d6026d64 glyphicons-halflings-regular.eot 100644 blob 94fb5490a2ed10b2c69a4a567a4fd2e4f706d841 glyphicons-halflings-regular.svg 100644 blob 1413fc609ab6f21774de0cb7e01360095584f65b glyphicons-halflings-regular.ttf 100644 blob 9e612858f802245ddcbf59788a0db942224bab35 glyphicons-halflings-regular.woff 100644 blob 64539b54c3751a6d9adb44c8e3a45ba5a73b77f0 glyphicons-halflings-regular.woff2 是我要浏览的目录的ID / SHA-1。在这种情况下,结果是我的Git存储库正在跟踪该目录中的四个文件。如果目录中包含其他文件,则意味着这些附加文件未被跟踪。您当然可以使用14032aabd85b43a058cfc7025dd4fa9dd325ea97添加文件。