git bisect run: пусть ищет скрипт
Бинарный поиск по истории с автоматической проверкой каждого коммита.
Когда известно, что раньше работало, а теперь нет, git bisect найдёт виноватый коммит за логарифм шагов. Ручную проверку можно отдать скрипту.
git bisect start HEAD v2.4.0
git bisect run ./check.sh
git bisect reset
Скрипт сообщает результат кодом выхода:
0— коммит хороший;1–127, кроме125— плохой;125— проверить нельзя (не собирается), коммит пропускается.
#!/bin/sh
make -s build || exit 125
./build/app --selftest
Две сотни коммитов проверяются примерно за восемь шагов, а пока скрипт работает, можно заняться чем-то другим.