Git 日志 *.java 文件和提交者

Dar*_*Var 5 git

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

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

git log --name-only --pretty=format:"The author of %h was %ae on %aD" -- '*.java'
Run Code Online (Sandbox Code Playgroud)

mpl*_*plf 1

我不认为你离得很远,但我也不认为它可以直接使用 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
Run Code Online (Sandbox Code Playgroud)

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