如何使用日期时间和文件名在一行中进行git日志

时间:2015-10-01 17:49:38

标签: git git-log

我想有一个git log(或以任何其他方式)输出这样的,

2015-01-14 10:33:14 main.cpp
2014-10-30 11:30:22 some.cpp
2014-10-27 10:15:43 another.cpp
2014-10-27 09:41:22 main.cpp
2014-10-24 19:15:08 some.cpp

基本上输出应包含日期,时间和文件更改。如示例所示,一个条目应该在一行中。 我检查了很多格式,但找不到输出文件名的方法。

那么,如何从git命令获得这样的东西?

2 个答案:

答案 0 :(得分:4)

这就是awk的用途。

git log --pretty=%x0a%ci --name-only \
| awk '
     /^$/        { dateline=!dateline; next }
     dateline    { date=$0; next }
     !seen[$0]++ { print date,$0 }
'

答案 1 :(得分:0)

我认为你在寻找的是

git diff --name-only

这将使您在上次提交后更改文件名

你可以做到

git diff --name-only <commit1> <commit2>

在两次提交之间获取更改的文件