mercurial/helptext/hg.1.txt
author Manuel Jacob <me@manueljacob.de>
Mon, 11 Jul 2022 01:51:20 +0200
branchstable
changeset 49378 094a5fa3cf52
parent 48743 a1538c05d855
child 49830 bc59c1e5dd01
permissions -rw-r--r--
procutil: make stream detection in make_line_buffered more correct and strict In make_line_buffered(), we don’t want to wrap the stream if we know that lines get flushed to the underlying raw stream already. Previously, the heuristic was too optimistic. It assumed that any stream which is not an instance of io.BufferedIOBase doesn’t need wrapping. However, there are buffered streams that aren’t instances of io.BufferedIOBase, like Mercurial’s own winstdout. The new logic is different in two ways: First, only for the check, if unwraps any combination of WriteAllWrapper and winstdout. Second, it skips wrapping the stream only if it is an instance of io.RawIOBase (or already wrapped). If it is an instance of io.BufferedIOBase, it gets wrapped. In any other case, the function raises an exception. This ensures that, if an unknown stream is passed or we add another wrapper in the future, we don’t wrap the stream if it’s already line buffered or not wrap the stream if it’s not line buffered. In fact, this was already helpful during development of this change. Without it, I possibly would have forgot that WriteAllWrapper needs to be ignored for the check, leading to unnecessary wrapping if stdout is unbuffered. The alternative would have been to always wrap unknown streams. However, I don’t think that anyone would benefit from being less strict. We can expect streams from the standard library to be subclassing either io.RawIOBase or io.BufferedIOBase, so running Mercurial in the standard way should not regress by this change. Py2exe might replace sys.stdout and sys.stderr, but that currently breaks Mercurial anyway and also these streams don’t claim to be interactive, so this function is not called for them.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
     1
====
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
     2
 hg
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
     3
====
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
     4
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
     5
---------------------------------------
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
     6
Mercurial source code management system
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
     7
---------------------------------------
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
     8
46819
d4ba4d51f85f contributor: change mentions of mpm to olivia
Raphaël Gomès <rgomes@octobus.net>
parents: 46413
diff changeset
     9
:Author:         Olivia Mackall <olivia@selenic.com>
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    10
:Organization:   Mercurial
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    11
:Manual section: 1
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    12
:Manual group:   Mercurial Manual
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    13
9422
ec26d6986d85 doc: add TOC to hg.1.html and hgrc.5.html
Martin Geisler <mg@lazybytes.net>
parents: 9162
diff changeset
    14
.. contents::
ec26d6986d85 doc: add TOC to hg.1.html and hgrc.5.html
Martin Geisler <mg@lazybytes.net>
parents: 9162
diff changeset
    15
   :backlinks: top
ec26d6986d85 doc: add TOC to hg.1.html and hgrc.5.html
Martin Geisler <mg@lazybytes.net>
parents: 9162
diff changeset
    16
   :class: htmlonly
12776
4f4eddee254d gendoc: move section commands to module scope
Martin Geisler <mg@lazybytes.net>
parents: 10263
diff changeset
    17
   :depth: 1
9422
ec26d6986d85 doc: add TOC to hg.1.html and hgrc.5.html
Martin Geisler <mg@lazybytes.net>
parents: 9162
diff changeset
    18
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    19
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
    20
Synopsis
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
    21
""""""""
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    22
**hg** *command* [*option*]... [*argument*]...
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    23
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
    24
Description
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
    25
"""""""""""
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    26
The **hg** command provides a command line interface to the Mercurial
8728
9d67706ee8d5 hg.1: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 7211
diff changeset
    27
system.
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    28
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
    29
Command Elements
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
    30
""""""""""""""""
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    31
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    32
files...
724
1c0c413cccdd Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents: 671
diff changeset
    33
    indicates one or more filename or relative path filenames; see
9702
a9d15bf7efe2 doc: add some internal links to man pages
Martin Geisler <mg@lazybytes.net>
parents: 9510
diff changeset
    34
    `File Name Patterns`_ for information on pattern matching
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    35
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    36
path
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    37
    indicates a path on the local machine
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    38
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    39
revision
8728
9d67706ee8d5 hg.1: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 7211
diff changeset
    40
    indicates a changeset which can be specified as a changeset
9d67706ee8d5 hg.1: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 7211
diff changeset
    41
    revision number, a tag, or a unique substring of the changeset
9d67706ee8d5 hg.1: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 7211
diff changeset
    42
    hash value
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    43
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    44
repository path
498
8cf3999b3d03 Various doc clean-ups and spelling fixes
mpm@selenic.com
parents: 497
diff changeset
    45
    either the pathname of a local repository or the URI of a remote
7211
25c0dee16ee0 Autodetect static-http
Matt Mackall <mpm@selenic.com>
parents: 6655
diff changeset
    46
    repository.
438
b38deaf7873e Update docs
mpm@selenic.com
parents: 330
diff changeset
    47
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    48
.. include:: hg.1.gendoc.txt
438
b38deaf7873e Update docs
mpm@selenic.com
parents: 330
diff changeset
    49
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
    50
Files
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
    51
"""""
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8936
diff changeset
    52
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    53
``/etc/mercurial/hgrc``, ``$HOME/.hgrc``, ``.hg/hgrc``
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    54
    This file contains defaults and configuration. Values in
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    55
    ``.hg/hgrc`` override those in ``$HOME/.hgrc``, and these override
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    56
    settings made in the global ``/etc/mercurial/hgrc`` configuration.
9162
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
    57
    See |hgrc(5)|_ for details of the contents and format of these
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    58
    files.
321
73b8a8a059ec Transparent proxy support
mpm@selenic.com
parents: 196
diff changeset
    59
15616
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    60
``.hgignore``
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    61
    This file contains regular expressions (one per line) that
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    62
    describe file names that should be ignored by **hg**. For details,
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    63
    see |hgignore(5)|_.
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    64
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    65
``.hgsub``
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    66
    This file defines the locations of all subrepositories, and
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    67
    tells where the subrepository checkouts came from. For details, see
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    68
    :hg:`help subrepos`.
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    69
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    70
``.hgsubstate``
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    71
    This file is where Mercurial stores all nested repository states. *NB: This
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    72
    file should not be edited manually.*
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    73
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    74
``.hgtags``
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    75
    This file contains changeset hash values and text tag names (one
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    76
    of each separated by spaces) that correspond to tagged versions of
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    77
    the repository contents. The file content is encoded using UTF-8.
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    78
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    79
``.hg/last-message.txt``
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    80
    This file is used by :hg:`commit` to store a backup of the commit message
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    81
    in case the commit fails.
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    82
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    83
``.hg/localtags``
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    84
    This file can be used to define local tags which are not shared among
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    85
    repositories. The file format is the same as for ``.hgtags``, but it is
05e522d3f186 Describe all files related to the standard commands.
Olav Reinert <seroton10@gmail.com>
parents: 12776
diff changeset
    86
    encoded using the local system encoding.
18960
170fc0949fb6 check-code: check txt files for trailing whitespace
Mads Kiilerich <madski@unity3d.com>
parents: 17267
diff changeset
    87
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    88
Some commands (e.g. revert) produce backup files ending in ``.orig``,
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    89
if the ``.orig`` file already exists and is not tracked by Mercurial,
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    90
it will be overwritten.
3021
b9dbbcf8a488 Document the fact that revert might overwrite .orig files
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 2859
diff changeset
    91
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
    92
Bugs
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
    93
""""
9702
a9d15bf7efe2 doc: add some internal links to man pages
Martin Geisler <mg@lazybytes.net>
parents: 9510
diff changeset
    94
Probably lots, please post them to the mailing list (see Resources_
8728
9d67706ee8d5 hg.1: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 7211
diff changeset
    95
below) when you find them.
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
    96
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
    97
See Also
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
    98
""""""""
9162
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
    99
|hgignore(5)|_, |hgrc(5)|_
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents: 631
diff changeset
   100
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
   101
Author
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
   102
""""""
46819
d4ba4d51f85f contributor: change mentions of mpm to olivia
Raphaël Gomès <rgomes@octobus.net>
parents: 46413
diff changeset
   103
Written by Olivia Mackall <olivia@selenic.com>
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
   104
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
   105
Resources
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
   106
"""""""""
26421
4b0fc75f9403 urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents: 24191
diff changeset
   107
Main Web Site: https://mercurial-scm.org/
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
   108
30244
4e934804cafe help: replace selenic.com by mercurial-scm.org in man pages
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27925
diff changeset
   109
Source code repository: https://www.mercurial-scm.org/repo/hg
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
   110
30244
4e934804cafe help: replace selenic.com by mercurial-scm.org in man pages
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 27925
diff changeset
   111
Mailing list: https://www.mercurial-scm.org/mailman/listinfo/mercurial/
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
   112
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9705
diff changeset
   113
Copying
17267
979b107eaea2 doc: unify section level between help topics
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16548
diff changeset
   114
"""""""
48743
a1538c05d855 copyright: it's 2022
Raphaël Gomès <rgomes@octobus.net>
parents: 46819
diff changeset
   115
Copyright (C) 2005-2022 Olivia Mackall.
177
91055f795d88 adding doc directory and files
jake@edge2.net
parents:
diff changeset
   116
Free use of this software is granted under the terms of the GNU General
10263
25e572394f5c Update license to GPLv2+
Matt Mackall <mpm@selenic.com>
parents: 10209
diff changeset
   117
Public License version 2 or any later version.
9162
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
   118
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
   119
.. include:: common.txt