第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何找到在任何分支中引入字符串的Git提交?

如何找到在任何分支中引入字符串的Git提交?

Git
犯罪嫌疑人X 2019-09-18 10:57:21
我希望能夠找到任何分支中任何提交中引入的某個字符串,我該怎么做?我找到了一些東西(我為Win32修改過),但git whatchanged似乎沒有查看不同的分支(忽略py3k塊,它只是一個msys / win換行修復)git whatchanged -- <file> | \grep "^commit " | \python -c "exec(\"import sys,msvcrt,os\nmsvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)\nfor l in sys.stdin: print(l.split()[1])\")" | \xargs -i% git show origin % -- <file>如果您的解決方案很慢,這并不重要。
查看完整描述

3 回答

?
翻閱古今

TA貢獻1780條經(jīng)驗 獲得超5個贊

你可以做:


git log -S <whatever> --source --all

查找添加或刪除固定字符串的 所有提交whatever。該--all參數(shù)意味著從每個分支開始,并且--source意味著顯示哪些分支導致找到該提交。添加-p以顯示每個提交也將引入的補丁通常很有用。


自1.7.4以來的git版本也有類似的-G選項,它采用正則表達式。這實際上有不同(而且更明顯)的語義,在Junio Hamano的博客文章中有所解釋。


正如thameera在評論中指出的那樣,如果它包含空格或其他特殊字符,則需要在搜索詞周圍加上引號,例如:


git log -S 'hello world' --source --all

git log -S "dude, where's my car?" --source --all

這是一個-G用于查找出現(xiàn)次數(shù)的示例function foo() {:


git log -G "^(\s)*function foo[(][)](\s)*{$" --source --all


查看完整回答
反對 回復 2019-09-18
?
眼眸繁星

TA貢獻1873條經(jīng)驗 獲得超9個贊

--reverse也很有幫助,因為您需要進行更改的第一個提交:


git log --all -p --reverse --source -S 'needle'

這樣,舊的提交將首先出現(xiàn)。


查看完整回答
反對 回復 2019-09-18
?
慕慕森

TA貢獻1856條經(jīng)驗 獲得超17個贊

用相同的答案搞清楚:


$ git config --global alias.find '!git log --color -p -S '

!因為其他方式,git不能正確地將參數(shù)傳遞給-S??吹竭@個回復

--color和-p有助于準確顯示“whatchanged”

現(xiàn)在你可以做到


$ git find <whatever>

要么


$ git find <whatever> --all

$ git find <whatever> master develop


查看完整回答
反對 回復 2019-09-18
  • 3 回答
  • 0 關注
  • 593 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號