我希望所有文件都包含最新的提交者。存储库大小相对较小,少于100个文件。
我认为有一种方法可以做到表现不佳的表现。获取repository tree然后检查每个sha属于哪个(跳过已经知道sha的)。 Tarball存储库和下载。这将导致不一致,因为下载tarball和tree / sha'所有者可能会遇到竞争条件。
任何编程语言的更好的解决方案都可以吗?
谢谢
使用git blame
显示修订版本和作者最后修改文件的每一行。结合find
,您可以使用提交者检查所有文件内容。
这个bash脚本递归地找出当前目录中的所有文件,并且git blame
所有文件并将输出写入/tmp/git_files.log
find . -type f -exec sh -c 'echo {}; git blame {}; echo;' \; > /tmp/git_files.log