Git log *.java 文件和提交者

标签 git

如何获取我的存储库中所有 Java 文件的列表,并获取原作者和该文件的所有提交者。

我的尝试在下面,但我希望每个 Java 文件一行,然后是所有提交者的列表。

git log --name-only --pretty=format:"The author of %h was %ae on %aD" -- '*.java'

最佳答案

我不认为你离得很远,但我也不认为它可以直接用 GIT 获得,相反,首先列出所有跟踪的文件,然后循环遍历每个文件。

for file in $(git ls-files | grep \.java$)
do
    echo "Looking at $file";
    git log --pretty=format:"The author of commit %h was %ae on %aD" -- $file;
    echo;
done

注意:使用 git ls-files *.java 只会列出当前目录中跟踪的 java 文件,而不是 repo 中的所有 java 文件。

关于Git log *.java 文件和提交者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31831181/

相关文章:

git - 将一个分支从一个仓库复制到另一个仓库

Git 与 beyond compare merge

git - 为什么我总是遇到错误 "Push to origin/master was rejected"?

Git merge 到之前 merge 的分支

git - 将 Bitbucket 服务器存储库与另一个存储库同步

git - MINGW32 GIT 客户端无法连接 Bonobo GIT 服务器

Git 即使在 `push --force` 之后也显示差异?

带有重命名检测的 git show 文件(相当于 git log --follow)

git - 在 git-svn 中克隆主干后克隆分支的最佳方法是什么?

git - 从 git 存储库中删除忽略的文件