[英]Is there a simple way to search through all the code of a git repo through all previous commits?
我有一個私有的 git 存儲庫,其中有一個關鍵字,如abcde
我之前在其中一個文件中寫下,這些文件今天可能仍在或可能不在該存儲庫中。 有沒有一種簡單的方法可以為我的關鍵字abcde
搜索所有以前提交的所有文件?
我想我需要編寫一個腳本來搜索每個當前文件,但如果它不存在,只需啟動git reset --hard previousCommit
直到它到達第一個提交。
您可能正在尋找
git log -G mykeyword
使用單個 git log 命令,您可以搜索引入任何給定文本的提交。
您必須將兩行代碼迭代 N 次:
(例如,如果您有 N 次提交)
for VARIABLE in 1 .. N
do
git checkout HEAD^
grep keyword *
done
因此,在您的情況下,您可以將以下代碼復制並粘貼到 git bash 中:
for VARIABLE in 1 .. 2500
do
git checkout HEAD^
grep abcde *
done
當下一次提交不再顯示您要查找的內容時,迭代停止。
完成此操作后,您最終可以看到最舊提交的 SHA 標識符是您要查找的單詞。 然后可能應用“重置 --hard”
我希望我有所幫助。 🙂
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.