我正在研究混合C++代碼和HTML模板文件的大型項目。搜索特定提交
我今天知道我應該將另一個分支上的C++文件(和)的更改合併到一起,但正如您可能猜到的那樣:我不記得我所做的所有提交。
有沒有辦法讓我通過git歷史來搜索所有匹配的提交所有這些條件?
- 都是由我
- 書面分別位於提交
A
,並承諾B
- 含更改
.cpp
,.c
或.h
文件(那些位於特定的子目錄是否有幫助)之間。
我正在研究混合C++代碼和HTML模板文件的大型項目。搜索特定提交
我今天知道我應該將另一個分支上的C++文件(和)的更改合併到一起,但正如您可能猜到的那樣:我不記得我所做的所有提交。
有沒有辦法讓我通過git歷史來搜索所有匹配的提交所有這些條件?
A
,並承諾B
.cpp
,.c
或.h
文件(那些位於特定的子目錄是否有幫助)之間。我終於想通了如何做到這一點:
要搜索的提交匹配特定作者,您可以使用--author
選項:
git log --author=ereOn
要搜索的提交的提交A
到B
,使用A..B
形式:
git log 9223253452..HEAD
最後,只關心涉及特定文件或路徑的提交:
git log -- path_or_file
--
用於指示可選參數的結束和位置參數的開始。
所有的合併,給出:
git log --author=ereOn 9223a6d916c034345..HEAD -- cpp_folder/*
這就像一個魅力:)
查找到git log
,運行git log --stat
會出現很多的您正在尋找,你可以通過管道就到grep像git log --stat | grep searchterm
搜索的細節,但這隻會給你與你的搜索項線。
您可以限制它使用此標誌--author "your name"
在我的機器git log
的輸出筆者通過VIM運行/更少,與您可以用vim的搜索命令搜索日誌像/searchterm
,找到所有出現任期,要到下一個打n
去前面的命中N
退房的手冊頁git log
你應該接受你自己的答案,如果它是針對已經發布的最佳答案的作品! –
@WillVousden:只能在2天內完成:) – ereOn
你能解釋一下嗎? – JKirchartz