我目前使用git log -G "XYZ" -p
來搜索某些事物(如類)的過去更改,但經常會遇到差異非常大的問題,並且很難找到搜索詞更改的實際行。有沒有辦法將輸出限制爲只有該行或僅有幾行?如何使用git log並只輸出匹配的行?
解決方案:git grep xyz $(git rev-list --all --max-count=5)
--max-count是可選的(我需要它,以避免錯誤Argument list too long
)
我目前使用git log -G "XYZ" -p
來搜索某些事物(如類)的過去更改,但經常會遇到差異非常大的問題,並且很難找到搜索詞更改的實際行。有沒有辦法將輸出限制爲只有該行或僅有幾行?如何使用git log並只輸出匹配的行?
解決方案:git grep xyz $(git rev-list --all --max-count=5)
--max-count是可選的(我需要它,以避免錯誤Argument list too long
)
你可以做的grep像git log -G "XYZ" -p | grep pattern
,如果窗口使用FINDSTR ..
而不是使用--max-count, - 因爲和--until會更好,如果你知道appr。時間段您要搜索
git grep xyz $(git rev-list --since="2016-11-20" --until="2016-11-21" --all)
但是最好的方法將在2部分使用。 1)確定提交,文件名和使用以下命令
1)git grep -c xyz $(git rev-list --all)
通算這個數目提交以下命令來獲取準確的問題
2)git grep xyz 718dcc690d8e99fd399f21fd71c86b1b8812a53d
使用'grep'也許,取決於你使用的平臺 – nullpointer
'grepdiff'可能有幫助。 – Gregg