hg clone [ПАРАМЕТР]... ИСТОЧНИК [НАЗН]

создать копию существующего хранилища

Create a copy of an existing repository in a new directory.

If no destination directory name is specified, it defaults to the
basename of the source.

The location of the source is added to the new repository's
``.hg/hgrc`` file, as the default to be used for future pulls.

Only local paths and ``ssh://`` URLs are supported as
destinations. For ``ssh://`` destinations, no working directory or
``.hg/hgrc`` will be created on the remote side.

If the source repository has a bookmark called '@' set, that
revision will be checked out in the new repository by default.

To check out a particular version, use -u/--update, or
-U/--noupdate to create a clone with no working directory.

To pull only a subset of changesets, specify one or more revisions
identifiers with -r/--rev or branches with -b/--branch. The
resulting clone will contain only the specified changesets and
their ancestors. These options (or 'clone src#rev dest') imply
--pull, even for local source repositories.

In normal clone mode, the remote normalizes repository data into a common
exchange format and the receiving end translates this data into its local
storage format. --stream activates a different clone mode that essentially
copies repository files from the remote with minimal data processing. This
significantly reduces the CPU cost of a clone both remotely and locally.
However, it often increases the transferred data size by 30-40%. This can
result in substantially faster clones where I/O throughput is plentiful,
especially for larger repositories. A side-effect of --stream clones is
that storage settings and requirements on the remote are applied locally:
a modern client may inherit legacy or inefficient storage used by the
remote or a legacy Mercurial client may not be able to clone from a
modern Mercurial remote.

.. note::

   Specifying a tag will include the tagged changeset but not the
   changeset containing the tag.

.. container:: verbose

  For efficiency, hardlinks are used for cloning whenever the
  source and destination are on the same filesystem (note this
  applies only to the repository data, not to the working
  directory). Some filesystems, such as AFS, implement hardlinking
  incorrectly, but do not report errors. In these cases, use the
  --pull option to avoid hardlinking.

  Mercurial will update the working directory to the first applicable
  revision from this list:

  a) null if -U or the source repository has no changesets
  b) if -u . and the source repository is local, the first parent of
     the source repository's working directory
  c) the changeset specified with -u (if a branch name, this means the
     latest head of that branch)
  d) the changeset specified with -r
  e) the tipmost head specified with -b
  f) the tipmost head specified with the url#branch source syntax
  g) the revision marked with the '@' bookmark, if present
  h) the tipmost head of the default branch
  i) tip

  When cloning from servers that support it, Mercurial may fetch
  pre-generated data from a server-advertised URL or inline from the
  same stream. When this is done, hooks operating on incoming changesets
  and changegroups may fire more than once, once for each pre-generated
  bundle and as well as for any additional remaining data. In addition,
  if an error occurs, the repository may be rolled back to a partial
  clone. This behavior may change in future releases.
  See :hg:`help -e clonebundles` for more.

  Examples:

  - clone a remote repository to a new directory named hg/::

      hg clone https://www.mercurial-scm.org/repo/hg/

  - create a lightweight local clone::

      hg clone project/ project-feature/

  - clone from an absolute path on an ssh server (note double-slash)::

      hg clone ssh://user@server//home/projects/alpha/

  - do a streaming clone while checking out a specified version::

      hg clone --stream http://server/repo -u 1.5

  - create a repository without changesets after a particular revision::

      hg clone -r 04e544 experimental/ good/

  - clone (and track) a particular named branch::

      hg clone https://www.mercurial-scm.org/repo/hg/#stable

See :hg:`help urls` for details on specifying URLs.

Returns 0 on success.


options ([+] can be repeated):

 == =================== =================================================================================
 -U --noupdate          the clone will include an empty working directory (only a repository)            
 -u --updaterev РЕВИЗИЯ revision, tag, or branch to check out                                            
 -r --rev РЕВИЗИЯ [+]   do not clone everything, but include this changeset and its ancestors            
 -b --branch ВЕТКА [+]  do not clone everything, but include this branch's changesets and their ancestors
    --pull              использовать протокол затягивания для копирования метаданных                     
    --uncompressed      an alias to --stream (DEPRECATED)                                                
    --stream            clone with minimal data processing                                               
 -e --ssh КОМАНДА       используемая команда для ssh                                                     
    --remotecmd КОМАНДА команда Mercurial, которая будет запущена на отдалённом компьютере               
    --insecure          не проверять сертификат сервера (игнорируя настройку web.cacerts)                
 == =================== =================================================================================

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