git bisect позволяет удобно находить баги среди коммитов.
2 коммита помечаются как плохой и хороший. Гит переводит репозиторий на середину истории между ними и даёт возможность проверить - есть ли баг в данный моммент. Дальше поиск производится по оставшейся половине истории.
2 коммита помечаются как плохой и хороший. Гит переводит репозиторий на середину истории между ними и даёт возможность проверить - есть ли баг в данный моммент. Дальше поиск производится по оставшейся половине истории.
Инициализация бинарного поиска
$ git bisect start
Графическое представление дерева c помеченными коммитами
$ git bisect visualize
Сбросить HEAD к началу бинарного поиска
$ git bisect reset
Сообщить, что в версии wine-1.0 ошибки нет
$ git bisect good wine-1.0
Сообщить, что в версии wine-1.1.1 ошибка есть
$ git bisect bad wine-1.1.1
Сообщить, что есть ошибка в текущем коммите
$ git bisect bad
Сообщить, что нет ошибки в текущем коммите
$ git bisect good
Запустить бинарный поиск, указав плохой коммит HEAD, и хороший коммит v1.0
$ git bisect start HEAD v1.0
Источники:
- 1-2, 5-6 - wiki.etersoft.ru
- 3-4, 7-8 - progit.org