Как выполнить каждый коммит в репо, чтобы отображать только коммиты, в которых есть строки с добавленным словом - PullRequest
0 голосов
/ 05 мая 2018

Как git grep каждый коммит в репо отображать только коммиты, в которых есть строки с добавленным словом.
Я ищу слово «представленный», и мне нужно найти коммиты, в которые добавлено это слово, но не в сообщении коммита, а в тексте файла, который был зафиксирован.
Также мне нужно использовать 'git grep', а не grep

Мой вопрос не является дубликатом, так как предлагаемый вопрос в общем отвечает только на то, как использовать grep, и я спрашиваю более конкретно, не как использовать grep, а как найти конкретную информацию, используя grep

1 Ответ

0 голосов
/ 05 мая 2018

Вы можете использовать git "поиск кирки" (я предпочитаю это git grep для этого случая использования) и grep вместе.

git log -p --all -G regex | grep regex

Это также будет включать удаление "regex", которое не то, что вы просили, но оно близко к тому, что вы просили.

Если вам нужно больше контекста, вы можете предоставить аргументы для grep, чтобы предоставить больше контекста, или использовать меньше:

git log -p --all -G regex | less 

внутри меньше вам нужно будет нажать / , а затем снова ввести регулярное выражение поиска и нажать Enter . Это найдет первый матч. Чтобы найти следующие совпадения, вы можете просто нажать / и Снова ввести .

В качестве альтернативы вы можете вывести все результаты в файл myfile:

git log -p --all -G regex > myfile

и откройте myfile в текстовом редакторе и найдите его там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...