hg bisect [-gbsr] [-U] [-c КОМАНДА] [РЕВИЗИЯ]

поиск ревизии методом деления пополам

This command helps to find changesets which introduce problems. To
use, mark the earliest changeset you know exhibits the problem as
bad, then mark the latest changeset which is free from the problem
as good. Bisect will update your working directory to a revision
for testing (unless the -U/--noupdate option is specified). Once
you have performed tests, mark the working directory as good or
bad, and bisect will either update to another candidate changeset
or announce that it has found the bad revision.

As a shortcut, you can also use the revision argument to mark a
revision as good or bad without checking it out first.

If you supply a command, it will be used for automatic bisection.
The environment variable HG_NODE will contain the ID of the
changeset being tested. The exit status of the command will be
used to mark revisions as good or bad: status 0 means good, 125
means to skip the revision, 127 (command not found) will abort the
bisection, and any other non-zero exit status means the revision
is bad.

.. container:: verbose

  Some examples:

  - start a bisection with known bad revision 34, and good revision 12::

      hg bisect --bad 34
      hg bisect --good 12

  - advance the current bisection by marking current revision as good or
    bad::

      hg bisect --good
      hg bisect --bad

  - mark the current revision, or a known revision, to be skipped (e.g. if
    that revision is not usable because of another issue)::

      hg bisect --skip
      hg bisect --skip 23

  - skip all revisions that do not touch directories ``foo`` or ``bar``::

      hg bisect --skip "!( file('path:foo') & file('path:bar') )"

  - forget the current bisection::

      hg bisect --reset

  - use 'make && make tests' to automatically find the first broken
    revision::

      hg bisect --reset
      hg bisect --bad 34
      hg bisect --good 12
      hg bisect --command "make && make tests"

  - see all changesets whose states are already known in the current
    bisection::

      hg log -r "bisect(pruned)"

  - see the changeset currently being bisected (especially useful
    if running with -U/--noupdate)::

      hg log -r "bisect(current)"

  - see all changesets that took part in the current bisection::

      hg log -r "bisect(range)"

  - you can even get a nice graph::

      hg log --graph -r "bisect(range)"

  See :hg:`help revisions.bisect` for more about the `bisect()` predicate.

Returns 0 on success.


options:

 == ================= ============================================================
 -r --reset           сбросить поиск                                              
 -g --good            пометить ревизию как хорошую                                
 -b --bad             пометить ревизию как плохую                                 
 -s --skip            пропустить тестирование набора изменений                    
 -e --extend          расширить диапазон поиска                                   
 -c --command КОМАНДА использовать команду для проверки состояния набора изменений
 -U --noupdate        не обновляться до целевой ревизии                           
 == ================= ============================================================

global options ([+] can be repeated):

 == ====================== =======================================================================================================================
 -R --repository ХРАНИЛИЩЕ корневой каталог хранилища или имя файла комплекта                                                                     
    --cwd КАТАЛОГ          сменить рабочий каталог                                                                                                
 -y --noninteractive       не спрашивать, на все вопросы автоматически выбирать первый вариант                                                    
 -q --quiet                подавлять вывод                                                                                                        
 -v --verbose              включить дополнительный вывод                                                                                          
    --color ТИП            when to colorize (boolean, always, auto, never, or debug)                                                              
    --config КОНФИГ [+]    задать/переопределить параметр конфигурации (в виде 'секция.параметр=значение')                                        
    --config-file HGRC [+] load config file to set/override config options                                                                        
    --debug                включить отладочный вывод                                                                                              
    --debugger             запустить отладчик                                                                                                     
    --encoding КОДИРОВКА   установить кодировку (по умолчанию: UTF-8)                                                                             
    --encodingmode РЕЖИМ   установить режим кодировки (по умолчанию: strict)                                                                      
    --traceback            всегда печатать трассировку стека при исключении                                                                       
    --time                 время выполнения команды                                                                                               
    --profile              профилирование выполнения команды                                                                                      
    --version              напечатать информацию о версии и выйти                                                                                 
 -h --help                 показать справку и выйти                                                                                               
    --hidden               учитывать скрытые наборы изменений                                                                                     
    --pager ТИП            когда использовать прокрутку (логический. always (всегда), auto(автоматически) или never (никогда) (по умолчанию: auto)
 == ====================== =======================================================================================================================