计算git存储库中的文件数

计算git存储库中的文件数,git,git-remote,Git,Git Remote,是否有可能在不克隆的情况下计算git远程存储中的文件数?在CVS中,我们将使用 cvs rls -lR $OldSrc $ProjectName'" | grep -v -e '^\$' -e '$ProjectName' -e '^d' | wc -l 在哪里, OldSrc --> Tag name [optional] ProjectName --> Actual project repository name. 请用git告诉我方便的命令。您不能远程执行

是否有可能在不克隆的情况下计算git远程存储中的文件数?在CVS中,我们将使用

cvs rls -lR $OldSrc $ProjectName'"  | grep -v -e '^\$' -e '$ProjectName' -e '^d' | wc -l
在哪里,

    OldSrc --> Tag name [optional]
    ProjectName --> Actual project repository name.

请用git告诉我方便的命令。

您不能远程执行此操作。您必须将git存储库或ssh克隆到远程机器才能查看存储库

拥有存储库后,您可以列出文件,例如

git show master^{tree}

您可以用感兴趣的分支/提交的名称替换
master
。这个命令也适用于裸存储库。

我不会使用Git,我会使用
find
。从Git工作副本的根目录运行以下操作:

find * -type f | wc -l

@opqdonut我认为更好的选择是
gitls文件| wc-l
。仍然不适用于远程存储库,但它确实会在子目录中递归,并且有一些选项可以影响是否包含未跟踪的文件、修改的文件等。
ls files
仅适用于非裸存储库。但是是的,我的缺点是没有注意到git show是非递归的。@twalberg:好地方。修好了!我想计算来自远程本地计算机的文件。这将报告一个过高的数字。例如,对于C项目,如果源代码树和构建树相同,我们将得到许多
*.o
*.d
*.a
*.so
(假设类似UNIX平台)和编译的程序文件等;编辑器可能会留下备份文件等。。。此外,如果根目录中有以
开头的文件,则这些文件将被忽略。对我来说,这个解决办法似乎不够。