perforce有一個非常有用的命令,可以打印出文件的所有修訂版本,其中註釋指示文件中每行包含哪些版本。例如,假設我創建了一個文件foo,將其簽入,然後檢查文件的兩個後續更改。這裏是foo的三個版本:相當於'p4 annotate -a'的git是什麼?
aaa aaa aaa
bbb bbb bbb
ccc ccc ccc
ddd ddd
eee fff
fff
這裏是P4註釋-a打印:
1-3: aaa
1-3: bbb
1-3: ccc
2-3: ddd
2-2: eee
2-3: fff
我看到foo的整個歷史,表明該版本包含的每一行註釋。
AFAICT,git blame只給出包含每行的最後一個版本。使用pickaxe的git日誌只打印與模式匹配的行,並在文件本身中提供提交消息而不是行。
有沒有辦法在git中執行類似上面的perforce命令?
由於提前,
格雷格
「混帳登錄-S‘SEARCH_STRING’文件」使用git的鎬頭功能,並做一些事向無環圖相關的「文件」的混帳我明白。我希望有這樣的事情,但輸出的文件行而不是git commit消息。 – user691307 2012-01-10 23:15:35
git log -S找到引入或刪除指定字符串的提交。這只是一個歷史過濾器。你也許可以將指定的修訂版本傳遞給'git blame',然後'grep'來處理blame輸出中也包含字符串的行...... – Amber 2012-01-10 23:18:54