2015-10-01 53 views
1

我想有一個git的日誌(或以任何其他方式),這樣的輸出,如何蠢貨,一行數與日期,時間和文件名

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命令得到類似這樣的東西?

+0

現在發佈之前 - 我知道你看了這個http://git-scm.com/docs/git-log正確嗎? – Nefariis

+0

@Nefarii,是的,我花了很多時間用不同的選項在那裏:(我能夠獲得更改文件列表在一個實例和時間戳在另一個實例,但無法同時獲得 – Morpheus

回答

1

這是awk的。

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

我想你正在尋找的是

git diff --name-only 

,將讓您更改文件名,因爲上次提交

你可以做

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

獲得兩次提交之間已更改的文件

+1

號。這隻會生成文件列表。我希望他們修改日期和時間。 – Morpheus

+0

yeh,對不起,實際上,[這個答案](http://stackoverflow.com/a/28068704/5398655)應該可以幫到你。 – Grisha

相關問題