Поиск изменения кода во всех филиалах - PullRequest
5 голосов
/ 09 декабря 2011

Я ищу коммит, в котором где-то в моем проекте была введена строка кода со словом «Аренда».Как я могу найти во всех ветвях коммиты, где были введены строки, включающие эту фразу?

Ответы [ 3 ]

12 голосов
/ 09 декабря 2011
git log --branches -S "Rental"

Вы также можете использовать --all вместо --branches, который будет включать теги, удаленные ветви и ваш первый тайник.

2 голосов
/ 09 декабря 2011

Поскольку вы ищете "первый раз", когда что-то вводится, вы можете попробовать git bisect вместо ..Он проведет вас через настройку точки «это не здесь» и «это определенно здесь», а затем будет шлепать вас по различным коммитам (спрашивая «это здесь?»), Пока не изолирует, где он находится.

Он также не слепо просматривает историю, а скорее "делит" пополам дерево, как если бы вы искали двоичное дерево.

Это немного медленнее, чем grep для всей истории, но более полезно для общих попытокотследить «первый раз» чего-либо еще;основной вариант использования - «когда впервые эта ошибка могла произойти».

Тогда было бы целесообразно увидеть, какие ветви включают в себя этот коммит, используя git branch --contains <commit>.

1 голос
/ 09 декабря 2011

Попробуйте это:

git log -Srental --all --pretty=oneline
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...