Поиск Git по нескольким хэшам одновременно

Я только что получил директиву, чтобы вернуть кучу зафиксированного кода. Хорошей новостью является то, что во всех коммитах есть строка ссылки, что-то вроде:

ABC-1556
ABC-1616
ABC-4818
ABC-5919

Эта рекомендация даст мне один из них, как мне изменить grep commend, чтобы найти их всех?

git log --pretty=oneline --abbrev-commit --grep='ABC-1556'

2 ответа

Вы можете поместить все свои ссылочные строки в файл (скажем, patterns), а затем использовать xargs запустить git log Команда для каждой строки:

xargs -iPATTERN git log --pretty=oneline --abbrev-commit --grep="PATTERN" < patterns

Если это всего лишь небольшое количество шаблонов, вы можете объединить их в командной строке следующим образом:

git log --pretty=oneline --abbrev-commit -E --grep="ABC-1556|ABC-1616|ABC-4818|ABC-5919"

Я пробовал это, но это не сработало:

git log --pretty=oneline --abbrev-commit --grep='ABC-1556|ABC-1616'

Но я обнаружил, что это сделал:

git log --pretty=oneline --abbrev-commit --grep=ABC-1556 --grep=ABC-1616

Задача решена!

Другие вопросы по тегам