hg admin::chainsaw-update [OPTION] --rev REV --source SOURCE --dest DEST

псевдонимы: admin::chainsawupdate

pull and update to a given revision, no matter what, (EXPERIMENTAL)

Context of application: *some* Continuous Integration (CI) systems,
packaging or deployment tools.

Wanted end result: local repository at the given REPO_PATH, having the
latest changes to the given revision and with a clean working directory
updated at the given revision.

chainsaw-update pulls from one source, then updates the working directory
to the given revision, overcoming anything that would stand in the way.

By default, it will:

- clone if the local repo does not exist yet, **removing any directory
  at the given path** that would not be a Mercurial repository.
  The initial clone is full by default, so that clonebundles can be
  applied. Use the --initial-clone-minimal flag to avoid this.
- break locks if needed, leading to possible corruption if there
  is a concurrent write access.
- perform recovery actions if needed
- revert any local modification.
- purge unknown and ignored files.
- go as far as to reclone if everything else failed (not implemented yet).

DO NOT use it for anything else than performing a series
of unattended updates, with full exclusive repository access each time
and without any other local work than running build scripts.
In case the local repository is a share (see :hg:`help share`), exclusive
write access to the share source is also mandatory.

It is recommended to run these commands with the ``HGPLAIN`` environment
variable (see :hg:`scripting`).

Motivation: in Continuous Integration and Delivery systems (CI/CD), the
occasional remnant or bogus lock are common sources of waste of time (both
working time and calendar time). CI/CD scripts tend to grow with counter-
measures, often done in urgency. Also, whilst it is neat to keep
repositories from one job to the next (especially with large
repositories), an exceptional recloning is better than missing a release
deadline.


options:

  ======================= =======================================================================================================================================================================================================================
  --[no-]purge-unknown    Remove unversioned files before update. Disabling this can in some cases interfere with the update.See also :hg:`purge`. (по умолчанию: on)                                                                            
  --[no-]purge-ignored    Remove ignored files before update. Disable this for instance to reuse previous compiler object files. See also :hg:`purge`. (по умолчанию: on)                                                                        
  --rev ЗНАЧЕНИЕ          revision to update to                                                                                                                                                                                                  
  --source ЗНАЧЕНИЕ       repository to clone from                                                                                                                                                                                               
  --dest ЗНАЧЕНИЕ         repository to update to REV (possibly cloning)                                                                                                                                                                         
  --initial-clone-minimal Pull only the prescribed revision upon initial cloning. This has the side effect of ignoring clone-bundles, which if often slower on the client side and stressful to the server than applying available clone bundles.
  ======================= =======================================================================================================================================================================================================================

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)
 == ====================== =======================================================================================================================