git log-在一行中显示文件名和最新哈希

时间:2020-06-22 13:25:12

标签: git logging

我想在git存储库中显示文件名,并在一行中显示最新的提交哈希,并用等号分隔。如果某些文件属于同一提交,则应在单独的行中列出它们。

示例:

file1.txt=0c6347311613be2ec6fb61c43f36e87a6f3f998a
file2.txt=0b4180564ddc676a3a2bb4d2c4111fb08adc9d09
file3.txt=0b4180564ddc676a3a2bb4d2c4111fb08adc9d09
file4.txt=0b4180564ddc676a3a2bb4d2c4111fb08adc9d09
  and so on 

如何使用“ git log”实现这一目标? (没有“漂亮”格式的文件名格式说明符。)

我正在Windows上运行,所以不确定是否可以使用AWK等其他工具。

1 个答案:

答案 0 :(得分:1)

这不能一次完成....但是可以使用bash 1-liner来完成:

git ls-tree -r --name-only HEAD | while read file; do echo $file"="$( git log --pretty=%H -n 1 -- $file); done