Mercurial > hg
annotate doc/hgignore.5.txt @ 9815:49efeed49c94
rebase: make sure the newancestor is used during the whole update
(issue1561)
Before this change, newancestor was used only once as a replacement
for ancestor.ancestor, but merge.update calls ancestor.ancestor
several times, so it ends up with the "wrong" ancestor (the real
ancestor, but we want the parent of the rebased changeset for all but
the first rebased changeset).
Added a new test case for this: test-rebase-newancestor.
Also, in one scenario in test-rebase-collapse, there was a spurious
conflict caused by the same issue, so that test case was fixed by
removing the now unneeded conflict resolution and the output was
adapted accordingly.
author | Christian Boos <cboos@bct-technology.com> |
---|---|
date | Mon, 09 Nov 2009 20:15:49 +0100 |
parents | dd1a95ccbe07 |
children | 655ac26ad63e |
rev | line source |
---|---|
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
1 ========== |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
2 hgignore |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
3 ========== |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
4 |
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
5 --------------------------------- |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
6 syntax for Mercurial ignore files |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
7 --------------------------------- |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
8 |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
9 :Author: Vadim Gelfer <vadim.gelfer@gmail.com> |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
10 :Organization: Mercurial |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
11 :Manual section: 5 |
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
12 :Manual group: Mercurial Manual |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
13 |
9792
dd1a95ccbe07
doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents:
9624
diff
changeset
|
14 Synopsis |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
15 -------- |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
16 |
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
17 The Mercurial system uses a file called ``.hgignore`` in the root |
9127
35c3f94233a0
hgignore.5.txt: improved description of matching
Henri Wiechers <hwiechers@gmail.com>
parents:
8782
diff
changeset
|
18 directory of a repository to control its behavior when it searches |
35c3f94233a0
hgignore.5.txt: improved description of matching
Henri Wiechers <hwiechers@gmail.com>
parents:
8782
diff
changeset
|
19 for files that it is not currently tracking. |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
20 |
9792
dd1a95ccbe07
doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents:
9624
diff
changeset
|
21 Description |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
22 ----------- |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
23 |
9182
3a319bc8906d
hgignore.5: expanded description
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
24 The working directory of a Mercurial repository will often contain |
3a319bc8906d
hgignore.5: expanded description
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
25 files that should not be tracked by Mercurial. These include backup |
3a319bc8906d
hgignore.5: expanded description
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
26 files created by editors and build products created by compilers. |
9194
0de7cf8db5fd
hgignore.5: mark file names and cmdline options as literal text
Martin Geisler <mg@lazybytes.net>
parents:
9193
diff
changeset
|
27 These files can be ignored by listing them in a ``.hgignore`` file in |
0de7cf8db5fd
hgignore.5: mark file names and cmdline options as literal text
Martin Geisler <mg@lazybytes.net>
parents:
9193
diff
changeset
|
28 the root of the working directory. The ``.hgignore`` file must be |
9182
3a319bc8906d
hgignore.5: expanded description
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
29 created manually. It is typically put under version control, so that |
3a319bc8906d
hgignore.5: expanded description
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
30 the settings will propagate to other repositories with push and pull. |
3a319bc8906d
hgignore.5: expanded description
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
31 |
9127
35c3f94233a0
hgignore.5.txt: improved description of matching
Henri Wiechers <hwiechers@gmail.com>
parents:
8782
diff
changeset
|
32 An untracked file is ignored if its path relative to the repository |
35c3f94233a0
hgignore.5.txt: improved description of matching
Henri Wiechers <hwiechers@gmail.com>
parents:
8782
diff
changeset
|
33 root directory, or any prefix path of that path, is matched against |
9194
0de7cf8db5fd
hgignore.5: mark file names and cmdline options as literal text
Martin Geisler <mg@lazybytes.net>
parents:
9193
diff
changeset
|
34 any pattern in ``.hgignore``. |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
35 |
9161
e8b653a4b8da
doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents:
9158
diff
changeset
|
36 For example, say we have an an untracked file, ``file.c``, at |
e8b653a4b8da
doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents:
9158
diff
changeset
|
37 ``a/b/file.c`` inside our repository. Mercurial will ignore ``file.c`` |
e8b653a4b8da
doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents:
9158
diff
changeset
|
38 if any pattern in ``.hgignore`` matches ``a/b/file.c``, ``a/b`` or ``a``. |
9127
35c3f94233a0
hgignore.5.txt: improved description of matching
Henri Wiechers <hwiechers@gmail.com>
parents:
8782
diff
changeset
|
39 |
35c3f94233a0
hgignore.5.txt: improved description of matching
Henri Wiechers <hwiechers@gmail.com>
parents:
8782
diff
changeset
|
40 In addition, a Mercurial configuration file can reference a set of |
9162
2399362b3bb0
doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents:
9161
diff
changeset
|
41 per-user or global ignore files. See the |hgrc(5)|_ man page for details |
6446
ee5313bc3c0c
asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents:
4635
diff
changeset
|
42 of how to configure these files. Look for the "ignore" entry in the |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
43 "ui" section. |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
44 |
9127
35c3f94233a0
hgignore.5.txt: improved description of matching
Henri Wiechers <hwiechers@gmail.com>
parents:
8782
diff
changeset
|
45 To control Mercurial's handling of files that it manages, see the |
9624
585d2ffe969b
doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents:
9510
diff
changeset
|
46 |hg(1)|_ man page. Look for the ``-I`` and ``-X`` options. |
9127
35c3f94233a0
hgignore.5.txt: improved description of matching
Henri Wiechers <hwiechers@gmail.com>
parents:
8782
diff
changeset
|
47 |
9792
dd1a95ccbe07
doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents:
9624
diff
changeset
|
48 Syntax |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
49 ------ |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
50 |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
51 An ignore file is a plain text file consisting of a list of patterns, |
9624
585d2ffe969b
doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents:
9510
diff
changeset
|
52 with one pattern per line. Empty lines are skipped. The ``#`` |
585d2ffe969b
doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents:
9510
diff
changeset
|
53 character is treated as a comment character, and the ``\`` character |
8782
d19ab9a56bf4
doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents:
8780
diff
changeset
|
54 is treated as an escape character. |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
55 |
6446
ee5313bc3c0c
asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents:
4635
diff
changeset
|
56 Mercurial supports several pattern syntaxes. The default syntax used |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
57 is Python/Perl-style regular expressions. |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
58 |
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
59 To change the syntax used, use a line of the following form:: |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
60 |
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
61 syntax: NAME |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
62 |
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
63 where ``NAME`` is one of the following: |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
64 |
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
65 ``regexp`` |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
66 Regular expression, Python/Perl syntax. |
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
67 ``glob`` |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
68 Shell-style glob. |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
69 |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
70 The chosen syntax stays in effect when parsing all patterns that |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
71 follow, until another syntax is selected. |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
72 |
6446
ee5313bc3c0c
asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents:
4635
diff
changeset
|
73 Neither glob nor regexp patterns are rooted. A glob-syntax pattern of |
9624
585d2ffe969b
doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents:
9510
diff
changeset
|
74 the form ``*.c`` will match a file ending in ``.c`` in any directory, |
585d2ffe969b
doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents:
9510
diff
changeset
|
75 and a regexp pattern of the form ``\.c$`` will do the same. To root a |
585d2ffe969b
doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents:
9510
diff
changeset
|
76 regexp pattern, start it with ``^``. |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
77 |
9792
dd1a95ccbe07
doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents:
9624
diff
changeset
|
78 Example |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
79 ------- |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
80 |
9158
d6eecafaf12f
doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents:
9127
diff
changeset
|
81 Here is an example ignore file. :: |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
82 |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
83 # use glob syntax. |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
84 syntax: glob |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
85 |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
86 *.elc |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
87 *.pyc |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
88 *~ |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
89 |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
90 # switch to regexp syntax. |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
91 syntax: regexp |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
92 ^\.pc/ |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
93 |
9792
dd1a95ccbe07
doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents:
9624
diff
changeset
|
94 Author |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
95 ------ |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
96 Vadim Gelfer <vadim.gelfer@gmail.com> |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
97 |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
98 Mercurial was written by Matt Mackall <mpm@selenic.com>. |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
99 |
9792
dd1a95ccbe07
doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents:
9624
diff
changeset
|
100 See Also |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
101 -------- |
9162
2399362b3bb0
doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents:
9161
diff
changeset
|
102 |hg(1)|_, |hgrc(5)|_ |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
103 |
9792
dd1a95ccbe07
doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents:
9624
diff
changeset
|
104 Copying |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
105 ------- |
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
106 This manual page is copyright 2006 Vadim Gelfer. |
8771
a2871de50f50
man pages: updated copyright years
Martin Geisler <mg@lazybytes.net>
parents:
8766
diff
changeset
|
107 Mercurial is copyright 2005-2009 Matt Mackall. |
2209
956e329f9e13
document hgignore syntax in new file doc/hgignore.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
108 Free use of this software is granted under the terms of the GNU General |
9510
8bd669948b2e
doc: clarify license footers
Adrian Buehlmann <adrian@cadifra.com>
parents:
9194
diff
changeset
|
109 Public License version 2. |
9162
2399362b3bb0
doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents:
9161
diff
changeset
|
110 |
2399362b3bb0
doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents:
9161
diff
changeset
|
111 .. include:: common.txt |