Я использую мерзавца, делят пополам для нахождения фиксации стимулирования отказа. Однако много фиксаций в диапазоне определенно не важно (потому что они, соглашается на документацию или на модульные тесты). Я хотел бы заставить мерзавца разделить пополам автоматически фиксации пропуска, которые влияют на файлы в определенных каталогах. Действительно ли это возможно так или иначе?
Здесь есть несколько вариантов:
Игнорирование определенных коммитов
git bisect
содержит функцию пропуска коммитов. Вы можете указать коммиты, теги, диапазоны, которые не хотите тестировать, с помощью
git bisect skip 0dae5f ff049ab ...
Просто сделайте это перед тем, как git bisect run
, и он должен пропустить то, что вы указали.
Указание папок с неработающими исходными кодами
Вы также можете сократить тесты коммитов bisect
, указав, в каких папках следует искать проблемы. Это делается в начале bisect
процесс путем подачи дополнительных аргументов в git bisect start
(цитата из стандартного руководства):
git bisect start - arch / i386 include / asm-i386
Bisect учитывает только те коммиты, которые касаются указанных папок.
Если вы хотите автоматически собирать коммиты, касающиеся определенных файлов или папок, вы можете использовать для этого git log
. Например, следующая команда даст вам имена коммитов, которые изменяют файлы в определенных папках:
git log --pretty=format:%H tests/ docs/
И вы можете передать результат в git bisect skip
с использованием возможностей оболочки:
git bisect skip `git log --pretty=format:%H tests/ docs/`