Поиск 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
Задача решена!