##// END OF EJS Templates
tests: fix up changed output
Matt Mackall -
r12787:e8a8993b default
parent child Browse files
Show More
@@ -1,387 +1,387 b''
1 1
2 2 $ cat >> $HGRCPATH <<EOF
3 3 > [extensions]
4 4 > convert=
5 5 > [convert]
6 6 > hg.saverev=False
7 7 > EOF
8 8 $ hg help convert
9 9 hg convert [OPTION]... SOURCE [DEST [REVMAP]]
10 10
11 11 convert a foreign SCM repository to a Mercurial one.
12 12
13 13 Accepted source formats [identifiers]:
14 14
15 15 - Mercurial [hg]
16 16 - CVS [cvs]
17 17 - Darcs [darcs]
18 18 - git [git]
19 19 - Subversion [svn]
20 20 - Monotone [mtn]
21 21 - GNU Arch [gnuarch]
22 22 - Bazaar [bzr]
23 23 - Perforce [p4]
24 24
25 25 Accepted destination formats [identifiers]:
26 26
27 27 - Mercurial [hg]
28 28 - Subversion [svn] (history on branches is not preserved)
29 29
30 30 If no revision is given, all revisions will be converted. Otherwise,
31 31 convert will only import up to the named revision (given in a format
32 32 understood by the source).
33 33
34 34 If no destination directory name is specified, it defaults to the basename
35 35 of the source with "-hg" appended. If the destination repository doesn't
36 36 exist, it will be created.
37 37
38 38 By default, all sources except Mercurial will use --branchsort. Mercurial
39 39 uses --sourcesort to preserve original revision numbers order. Sort modes
40 40 have the following effects:
41 41
42 42 --branchsort convert from parent to child revision when possible, which
43 43 means branches are usually converted one after the other. It
44 44 generates more compact repositories.
45 45 --datesort sort revisions by date. Converted repositories have good-
46 46 looking changelogs but are often an order of magnitude
47 47 larger than the same ones generated by --branchsort.
48 48 --sourcesort try to preserve source revisions order, only supported by
49 49 Mercurial sources.
50 50
51 51 If <REVMAP> isn't given, it will be put in a default location
52 52 (<dest>/.hg/shamap by default). The <REVMAP> is a simple text file that
53 53 maps each source commit ID to the destination ID for that revision, like
54 54 so:
55 55
56 56 <source ID> <destination ID>
57 57
58 58 If the file doesn't exist, it's automatically created. It's updated on
59 59 each commit copied, so "hg convert" can be interrupted and can be run
60 60 repeatedly to copy new commits.
61 61
62 62 The authormap is a simple text file that maps each source commit author to
63 63 a destination commit author. It is handy for source SCMs that use unix
64 64 logins to identify authors (eg: CVS). One line per author mapping and the
65 65 line format is:
66 66
67 67 source author = destination author
68 68
69 69 Empty lines and lines starting with a "#" are ignored.
70 70
71 71 The filemap is a file that allows filtering and remapping of files and
72 72 directories. Each line can contain one of the following directives:
73 73
74 74 include path/to/file-or-dir
75 75
76 76 exclude path/to/file-or-dir
77 77
78 78 rename path/to/source path/to/destination
79 79
80 80 Comment lines start with "#". A specified path matches if it equals the
81 81 full relative name of a file or one of its parent directories. The
82 82 "include" or "exclude" directive with the longest matching path applies,
83 83 so line order does not matter.
84 84
85 85 The "include" directive causes a file, or all files under a directory, to
86 86 be included in the destination repository, and the exclusion of all other
87 87 files and directories not explicitly included. The "exclude" directive
88 88 causes files or directories to be omitted. The "rename" directive renames
89 89 a file or directory if it is converted. To rename from a subdirectory into
90 90 the root of the repository, use "." as the path to rename to.
91 91
92 92 The splicemap is a file that allows insertion of synthetic history,
93 93 letting you specify the parents of a revision. This is useful if you want
94 94 to e.g. give a Subversion merge two parents, or graft two disconnected
95 95 series of history together. Each entry contains a key, followed by a
96 96 space, followed by one or two comma-separated values:
97 97
98 98 key parent1, parent2
99 99
100 100 The key is the revision ID in the source revision control system whose
101 101 parents should be modified (same format as a key in .hg/shamap). The
102 102 values are the revision IDs (in either the source or destination revision
103 103 control system) that should be used as the new parents for that node. For
104 104 example, if you have merged "release-1.0" into "trunk", then you should
105 105 specify the revision on "trunk" as the first parent and the one on the
106 106 "release-1.0" branch as the second.
107 107
108 108 The branchmap is a file that allows you to rename a branch when it is
109 109 being brought in from whatever external repository. When used in
110 110 conjunction with a splicemap, it allows for a powerful combination to help
111 111 fix even the most badly mismanaged repositories and turn them into nicely
112 112 structured Mercurial repositories. The branchmap contains lines of the
113 113 form:
114 114
115 115 original_branch_name new_branch_name
116 116
117 117 where "original_branch_name" is the name of the branch in the source
118 118 repository, and "new_branch_name" is the name of the branch is the
119 119 destination repository. No whitespace is allowed in the branch names. This
120 120 can be used to (for instance) move code in one repository from "default"
121 121 to a named branch.
122 122
123 123 Mercurial Source
124 ----------------
124 ''''''''''''''''
125 125
126 126 --config convert.hg.ignoreerrors=False (boolean)
127 127 ignore integrity errors when reading. Use it to fix Mercurial
128 128 repositories with missing revlogs, by converting from and to
129 129 Mercurial.
130 130
131 131 --config convert.hg.saverev=False (boolean)
132 132 store original revision ID in changeset (forces target IDs to change)
133 133
134 134 --config convert.hg.startrev=0 (hg revision identifier)
135 135 convert start revision and its descendants
136 136
137 137 CVS Source
138 ----------
138 ''''''''''
139 139
140 140 CVS source will use a sandbox (i.e. a checked-out copy) from CVS to
141 141 indicate the starting point of what will be converted. Direct access to
142 142 the repository files is not needed, unless of course the repository is
143 143 :local:. The conversion uses the top level directory in the sandbox to
144 144 find the CVS repository, and then uses CVS rlog commands to find files to
145 145 convert. This means that unless a filemap is given, all files under the
146 146 starting directory will be converted, and that any directory
147 147 reorganization in the CVS sandbox is ignored.
148 148
149 149 The options shown are the defaults.
150 150
151 151 --config convert.cvsps.cache=True (boolean)
152 152 Set to False to disable remote log caching, for testing and debugging
153 153 purposes.
154 154
155 155 --config convert.cvsps.fuzz=60 (integer)
156 156 Specify the maximum time (in seconds) that is allowed between commits
157 157 with identical user and log message in a single changeset. When very
158 158 large files were checked in as part of a changeset then the default
159 159 may not be long enough.
160 160
161 161 --config convert.cvsps.mergeto='{{mergetobranch ([-\w]+)}}'
162 162 Specify a regular expression to which commit log messages are matched.
163 163 If a match occurs, then the conversion process will insert a dummy
164 164 revision merging the branch on which this log message occurs to the
165 165 branch indicated in the regex.
166 166
167 167 --config convert.cvsps.mergefrom='{{mergefrombranch ([-\w]+)}}'
168 168 Specify a regular expression to which commit log messages are matched.
169 169 If a match occurs, then the conversion process will add the most
170 170 recent revision on the branch indicated in the regex as the second
171 171 parent of the changeset.
172 172
173 173 --config hook.cvslog
174 174 Specify a Python function to be called at the end of gathering the CVS
175 175 log. The function is passed a list with the log entries, and can
176 176 modify the entries in-place, or add or delete them.
177 177
178 178 --config hook.cvschangesets
179 179 Specify a Python function to be called after the changesets are
180 180 calculated from the the CVS log. The function is passed a list with
181 181 the changeset entries, and can modify the changesets in-place, or add
182 182 or delete them.
183 183
184 184 An additional "debugcvsps" Mercurial command allows the builtin changeset
185 185 merging code to be run without doing a conversion. Its parameters and
186 186 output are similar to that of cvsps 2.1. Please see the command help for
187 187 more details.
188 188
189 189 Subversion Source
190 -----------------
190 '''''''''''''''''
191 191
192 192 Subversion source detects classical trunk/branches/tags layouts. By
193 193 default, the supplied "svn://repo/path/" source URL is converted as a
194 194 single branch. If "svn://repo/path/trunk" exists it replaces the default
195 195 branch. If "svn://repo/path/branches" exists, its subdirectories are
196 196 listed as possible branches. If "svn://repo/path/tags" exists, it is
197 197 looked for tags referencing converted branches. Default "trunk",
198 198 "branches" and "tags" values can be overridden with following options. Set
199 199 them to paths relative to the source URL, or leave them blank to disable
200 200 auto detection.
201 201
202 202 --config convert.svn.branches=branches (directory name)
203 203 specify the directory containing branches
204 204
205 205 --config convert.svn.tags=tags (directory name)
206 206 specify the directory containing tags
207 207
208 208 --config convert.svn.trunk=trunk (directory name)
209 209 specify the name of the trunk branch
210 210
211 211 Source history can be retrieved starting at a specific revision, instead
212 212 of being integrally converted. Only single branch conversions are
213 213 supported.
214 214
215 215 --config convert.svn.startrev=0 (svn revision number)
216 216 specify start Subversion revision.
217 217
218 218 Perforce Source
219 ---------------
219 '''''''''''''''
220 220
221 221 The Perforce (P4) importer can be given a p4 depot path or a client
222 222 specification as source. It will convert all files in the source to a flat
223 223 Mercurial repository, ignoring labels, branches and integrations. Note
224 224 that when a depot path is given you then usually should specify a target
225 225 directory, because otherwise the target may be named ...-hg.
226 226
227 227 It is possible to limit the amount of source history to be converted by
228 228 specifying an initial Perforce revision.
229 229
230 230 --config convert.p4.startrev=0 (perforce changelist number)
231 231 specify initial Perforce revision.
232 232
233 233 Mercurial Destination
234 ---------------------
234 '''''''''''''''''''''
235 235
236 236 --config convert.hg.clonebranches=False (boolean)
237 237 dispatch source branches in separate clones.
238 238
239 239 --config convert.hg.tagsbranch=default (branch name)
240 240 tag revisions branch name
241 241
242 242 --config convert.hg.usebranchnames=True (boolean)
243 243 preserve branch names
244 244
245 245 options:
246 246
247 247 -s --source-type TYPE source repository type
248 248 -d --dest-type TYPE destination repository type
249 249 -r --rev REV import up to target revision REV
250 250 -A --authormap FILE remap usernames using this file
251 251 --filemap FILE remap file names using contents of file
252 252 --splicemap FILE splice synthesized history into place
253 253 --branchmap FILE change branch names while converting
254 254 --branchsort try to sort changesets by branches
255 255 --datesort try to sort changesets by date
256 256 --sourcesort preserve source changesets order
257 257
258 258 use "hg -v help convert" to show global options
259 259 $ hg init a
260 260 $ cd a
261 261 $ echo a > a
262 262 $ hg ci -d'0 0' -Ama
263 263 adding a
264 264 $ hg cp a b
265 265 $ hg ci -d'1 0' -mb
266 266 $ hg rm a
267 267 $ hg ci -d'2 0' -mc
268 268 $ hg mv b a
269 269 $ hg ci -d'3 0' -md
270 270 $ echo a >> a
271 271 $ hg ci -d'4 0' -me
272 272 $ cd ..
273 273 $ hg convert a 2>&1 | grep -v 'subversion python bindings could not be loaded'
274 274 assuming destination a-hg
275 275 initializing destination a-hg repository
276 276 scanning source...
277 277 sorting...
278 278 converting...
279 279 4 a
280 280 3 b
281 281 2 c
282 282 1 d
283 283 0 e
284 284 $ hg --cwd a-hg pull ../a
285 285 pulling from ../a
286 286 searching for changes
287 287 no changes found
288 288 $ touch bogusfile
289 289
290 290 should fail
291 291
292 292 $ hg convert a bogusfile
293 293 initializing destination bogusfile repository
294 294 abort: cannot create new bundle repository
295 295 [255]
296 296 $ mkdir bogusdir
297 297 $ chmod 000 bogusdir
298 298
299 299 should fail
300 300
301 301 $ hg convert a bogusdir
302 302 abort: Permission denied: bogusdir
303 303 [255]
304 304
305 305 should succeed
306 306
307 307 $ chmod 700 bogusdir
308 308 $ hg convert a bogusdir
309 309 initializing destination bogusdir repository
310 310 scanning source...
311 311 sorting...
312 312 converting...
313 313 4 a
314 314 3 b
315 315 2 c
316 316 1 d
317 317 0 e
318 318
319 319 test pre and post conversion actions
320 320
321 321 $ echo 'include b' > filemap
322 322 $ hg convert --debug --filemap filemap a partialb | \
323 323 > grep 'run hg'
324 324 run hg source pre-conversion action
325 325 run hg sink pre-conversion action
326 326 run hg sink post-conversion action
327 327 run hg source post-conversion action
328 328
329 329 converting empty dir should fail "nicely
330 330
331 331 $ mkdir emptydir
332 332
333 333 override $PATH to ensure p4 not visible; use $PYTHON in case we're
334 334 running from a devel copy, not a temp installation
335 335
336 336 $ PATH="$BINDIR" $PYTHON "$BINDIR"/hg convert emptydir
337 337 assuming destination emptydir-hg
338 338 initializing destination emptydir-hg repository
339 339 emptydir does not look like a CVS checkout
340 340 emptydir does not look like a Git repository
341 341 emptydir does not look like a Subversion repository
342 342 emptydir is not a local Mercurial repository
343 343 emptydir does not look like a darcs repository
344 344 emptydir does not look like a monotone repository
345 345 emptydir does not look like a GNU Arch repository
346 346 emptydir does not look like a Bazaar repository
347 347 cannot find required "p4" tool
348 348 abort: emptydir: missing or unsupported repository
349 349 [255]
350 350
351 351 convert with imaginary source type
352 352
353 353 $ hg convert --source-type foo a a-foo
354 354 initializing destination a-foo repository
355 355 abort: foo: invalid source repository type
356 356 [255]
357 357
358 358 convert with imaginary sink type
359 359
360 360 $ hg convert --dest-type foo a a-foo
361 361 abort: foo: invalid destination repository type
362 362 [255]
363 363
364 364 testing: convert must not produce duplicate entries in fncache
365 365
366 366 $ hg convert a b
367 367 initializing destination b repository
368 368 scanning source...
369 369 sorting...
370 370 converting...
371 371 4 a
372 372 3 b
373 373 2 c
374 374 1 d
375 375 0 e
376 376
377 377 contents of fncache file:
378 378
379 379 $ cat b/.hg/store/fncache
380 380 data/a.i
381 381 data/b.i
382 382
383 383 test bogus URL
384 384
385 385 $ hg convert -q bzr+ssh://foobar@selenic.com/baz baz
386 386 abort: bzr+ssh://foobar@selenic.com/baz: missing or unsupported repository
387 387 [255]
@@ -1,425 +1,427 b''
1 1 $ "$TESTDIR/hghave" no-outer-repo || exit 80
2 2
3 3 $ hg init a
4 4 $ cd a
5 5 $ echo a > a
6 6 $ hg ci -A -d'1 0' -m a
7 7 adding a
8 8
9 9 $ cd ..
10 10
11 11 $ hg init b
12 12 $ cd b
13 13 $ echo b > b
14 14 $ hg ci -A -d'1 0' -m b
15 15 adding b
16 16
17 17 $ cd ..
18 18
19 19 $ hg clone a c
20 20 updating to branch default
21 21 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
22 22 $ cd c
23 23 $ cat >> .hg/hgrc <<EOF
24 24 > [paths]
25 25 > relative = ../a
26 26 > EOF
27 27 $ hg pull -f ../b
28 28 pulling from ../b
29 29 searching for changes
30 30 warning: repository is unrelated
31 31 adding changesets
32 32 adding manifests
33 33 adding file changes
34 34 added 1 changesets with 1 changes to 1 files (+1 heads)
35 35 (run 'hg heads' to see heads, 'hg merge' to merge)
36 36 $ hg merge
37 37 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
38 38 (branch merge, don't forget to commit)
39 39
40 40 $ cd ..
41 41
42 42 Testing -R/--repository:
43 43
44 44 $ hg -R a tip
45 45 changeset: 0:8580ff50825a
46 46 tag: tip
47 47 user: test
48 48 date: Thu Jan 01 00:00:01 1970 +0000
49 49 summary: a
50 50
51 51 $ hg --repository b tip
52 52 changeset: 0:b6c483daf290
53 53 tag: tip
54 54 user: test
55 55 date: Thu Jan 01 00:00:01 1970 +0000
56 56 summary: b
57 57
58 58
59 59 -R with a URL:
60 60
61 61 $ hg -R file:a identify
62 62 8580ff50825a tip
63 63 $ hg -R file://localhost/`pwd`/a/ identify
64 64 8580ff50825a tip
65 65
66 66 -R with path aliases:
67 67
68 68 $ cd c
69 69 $ hg -R default identify
70 70 8580ff50825a tip
71 71 $ hg -R relative identify
72 72 8580ff50825a tip
73 73 $ echo '[paths]' >> $HGRCPATH
74 74 $ echo 'relativetohome = a' >> $HGRCPATH
75 75 $ HOME=`pwd`/../ hg -R relativetohome identify
76 76 8580ff50825a tip
77 77 $ cd ..
78 78
79 79 Implicit -R:
80 80
81 81 $ hg ann a/a
82 82 0: a
83 83 $ hg ann a/a a/a
84 84 0: a
85 85 $ hg ann a/a b/b
86 86 abort: There is no Mercurial repository here (.hg not found)!
87 87 [255]
88 88 $ hg -R b ann a/a
89 89 abort: a/a not under root
90 90 [255]
91 91 $ hg log
92 92 abort: There is no Mercurial repository here (.hg not found)!
93 93 [255]
94 94
95 95 Abbreviation of long option:
96 96
97 97 $ hg --repo c tip
98 98 changeset: 1:b6c483daf290
99 99 tag: tip
100 100 parent: -1:000000000000
101 101 user: test
102 102 date: Thu Jan 01 00:00:01 1970 +0000
103 103 summary: b
104 104
105 105
106 106 earlygetopt with duplicate options (36d23de02da1):
107 107
108 108 $ hg --cwd a --cwd b --cwd c tip
109 109 changeset: 1:b6c483daf290
110 110 tag: tip
111 111 parent: -1:000000000000
112 112 user: test
113 113 date: Thu Jan 01 00:00:01 1970 +0000
114 114 summary: b
115 115
116 116 $ hg --repo c --repository b -R a tip
117 117 changeset: 0:8580ff50825a
118 118 tag: tip
119 119 user: test
120 120 date: Thu Jan 01 00:00:01 1970 +0000
121 121 summary: a
122 122
123 123
124 124 earlygetopt short option without following space:
125 125
126 126 $ hg -q -Rb tip
127 127 0:b6c483daf290
128 128
129 129 earlygetopt with illegal abbreviations:
130 130
131 131 $ hg --confi "foo.bar=baz"
132 132 abort: option --config may not be abbreviated!
133 133 [255]
134 134 $ hg --cw a tip
135 135 abort: option --cwd may not be abbreviated!
136 136 [255]
137 137 $ hg --rep a tip
138 138 abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
139 139 [255]
140 140 $ hg --repositor a tip
141 141 abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
142 142 [255]
143 143 $ hg -qR a tip
144 144 abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
145 145 [255]
146 146 $ hg -qRa tip
147 147 abort: Option -R has to be separated from other options (e.g. not -qR) and --repository may only be abbreviated as --repo!
148 148 [255]
149 149
150 150 Testing --cwd:
151 151
152 152 $ hg --cwd a parents
153 153 changeset: 0:8580ff50825a
154 154 tag: tip
155 155 user: test
156 156 date: Thu Jan 01 00:00:01 1970 +0000
157 157 summary: a
158 158
159 159
160 160 Testing -y/--noninteractive - just be sure it is parsed:
161 161
162 162 $ hg --cwd a tip -q --noninteractive
163 163 0:8580ff50825a
164 164 $ hg --cwd a tip -q -y
165 165 0:8580ff50825a
166 166
167 167 Testing -q/--quiet:
168 168
169 169 $ hg -R a -q tip
170 170 0:8580ff50825a
171 171 $ hg -R b -q tip
172 172 0:b6c483daf290
173 173 $ hg -R c --quiet parents
174 174 0:8580ff50825a
175 175 1:b6c483daf290
176 176
177 177 Testing -v/--verbose:
178 178
179 179 $ hg --cwd c head -v
180 180 changeset: 1:b6c483daf290
181 181 tag: tip
182 182 parent: -1:000000000000
183 183 user: test
184 184 date: Thu Jan 01 00:00:01 1970 +0000
185 185 files: b
186 186 description:
187 187 b
188 188
189 189
190 190 changeset: 0:8580ff50825a
191 191 user: test
192 192 date: Thu Jan 01 00:00:01 1970 +0000
193 193 files: a
194 194 description:
195 195 a
196 196
197 197
198 198 $ hg --cwd b tip --verbose
199 199 changeset: 0:b6c483daf290
200 200 tag: tip
201 201 user: test
202 202 date: Thu Jan 01 00:00:01 1970 +0000
203 203 files: b
204 204 description:
205 205 b
206 206
207 207
208 208
209 209 Testing --config:
210 210
211 211 $ hg --cwd c --config paths.quuxfoo=bar paths | grep quuxfoo > /dev/null && echo quuxfoo
212 212 quuxfoo
213 213 $ hg --cwd c --config '' tip -q
214 214 abort: malformed --config option: '' (use --config section.name=value)
215 215 [255]
216 216 $ hg --cwd c --config a.b tip -q
217 217 abort: malformed --config option: 'a.b' (use --config section.name=value)
218 218 [255]
219 219 $ hg --cwd c --config a tip -q
220 220 abort: malformed --config option: 'a' (use --config section.name=value)
221 221 [255]
222 222 $ hg --cwd c --config a.= tip -q
223 223 abort: malformed --config option: 'a.=' (use --config section.name=value)
224 224 [255]
225 225 $ hg --cwd c --config .b= tip -q
226 226 abort: malformed --config option: '.b=' (use --config section.name=value)
227 227 [255]
228 228
229 229 Testing --debug:
230 230
231 231 $ hg --cwd c log --debug
232 232 changeset: 1:b6c483daf2907ce5825c0bb50f5716226281cc1a
233 233 tag: tip
234 234 parent: -1:0000000000000000000000000000000000000000
235 235 parent: -1:0000000000000000000000000000000000000000
236 236 manifest: 1:23226e7a252cacdc2d99e4fbdc3653441056de49
237 237 user: test
238 238 date: Thu Jan 01 00:00:01 1970 +0000
239 239 files+: b
240 240 extra: branch=default
241 241 description:
242 242 b
243 243
244 244
245 245 changeset: 0:8580ff50825a50c8f716709acdf8de0deddcd6ab
246 246 parent: -1:0000000000000000000000000000000000000000
247 247 parent: -1:0000000000000000000000000000000000000000
248 248 manifest: 0:a0c8bcbbb45c63b90b70ad007bf38961f64f2af0
249 249 user: test
250 250 date: Thu Jan 01 00:00:01 1970 +0000
251 251 files+: a
252 252 extra: branch=default
253 253 description:
254 254 a
255 255
256 256
257 257
258 258 Testing --traceback:
259 259
260 260 $ hg --cwd c --config x --traceback id 2>&1 | grep -i 'traceback'
261 261 Traceback (most recent call last):
262 262
263 263 Testing --time:
264 264
265 265 $ hg --cwd a --time id
266 266 8580ff50825a tip
267 267 Time: real * (glob)
268 268
269 269 Testing --version:
270 270
271 271 $ hg --version -q
272 272 Mercurial Distributed SCM * (glob)
273 273
274 274 Testing -h/--help:
275 275
276 276 $ hg -h
277 277 Mercurial Distributed SCM
278 278
279 279 list of commands:
280 280
281 281 add add the specified files on the next commit
282 282 addremove add all new files, delete all missing files
283 283 annotate show changeset information by line for each file
284 284 archive create an unversioned archive of a repository revision
285 285 backout reverse effect of earlier changeset
286 286 bisect subdivision search of changesets
287 287 branch set or show the current branch name
288 288 branches list repository named branches
289 289 bundle create a changegroup file
290 290 cat output the current or given revision of files
291 291 clone make a copy of an existing repository
292 292 commit commit the specified files or all outstanding changes
293 293 copy mark files as copied for the next commit
294 294 diff diff repository (or selected files)
295 295 export dump the header and diffs for one or more changesets
296 296 forget forget the specified files on the next commit
297 297 grep search for a pattern in specified files and revisions
298 298 heads show current repository heads or show branch heads
299 299 help show help for a given topic or a help overview
300 300 identify identify the working copy or specified revision
301 301 import import an ordered set of patches
302 302 incoming show new changesets found in source
303 303 init create a new repository in the given directory
304 304 locate locate files matching specific patterns
305 305 log show revision history of entire repository or files
306 306 manifest output the current or given revision of the project manifest
307 307 merge merge working directory with another revision
308 308 outgoing show changesets not found in the destination
309 309 parents show the parents of the working directory or revision
310 310 paths show aliases for remote repositories
311 311 pull pull changes from the specified source
312 312 push push changes to the specified destination
313 313 recover roll back an interrupted transaction
314 314 remove remove the specified files on the next commit
315 315 rename rename files; equivalent of copy + remove
316 316 resolve redo merges or set/view the merge status of files
317 317 revert restore individual files or directories to an earlier state
318 318 rollback roll back the last transaction (dangerous)
319 319 root print the root (top) of the current working directory
320 320 serve start stand-alone webserver
321 321 showconfig show combined config settings from all hgrc files
322 322 status show changed files in the working directory
323 323 summary summarize working directory state
324 324 tag add one or more tags for the current or given revision
325 325 tags list repository tags
326 326 tip show the tip revision
327 327 unbundle apply one or more changegroup files
328 328 update update working directory (or switch revisions)
329 329 verify verify the integrity of the repository
330 330 version output version and copyright information
331 331
332 332 additional help topics:
333 333
334 334 config Configuration Files
335 335 dates Date Formats
336 336 patterns File Name Patterns
337 337 environment Environment Variables
338 338 revisions Specifying Single Revisions
339 339 multirevs Specifying Multiple Revisions
340 340 revsets Specifying Revision Sets
341 341 diffs Diff Formats
342 merge-tools Merge Tools
342 343 templating Template Usage
343 344 urls URL Paths
344 345 extensions Using additional features
345 346 hgweb Configuring hgweb
346 347 glossary Glossary
347 348
348 349 use "hg -v help" to show aliases and global options
349 350
350 351 $ hg --help
351 352 Mercurial Distributed SCM
352 353
353 354 list of commands:
354 355
355 356 add add the specified files on the next commit
356 357 addremove add all new files, delete all missing files
357 358 annotate show changeset information by line for each file
358 359 archive create an unversioned archive of a repository revision
359 360 backout reverse effect of earlier changeset
360 361 bisect subdivision search of changesets
361 362 branch set or show the current branch name
362 363 branches list repository named branches
363 364 bundle create a changegroup file
364 365 cat output the current or given revision of files
365 366 clone make a copy of an existing repository
366 367 commit commit the specified files or all outstanding changes
367 368 copy mark files as copied for the next commit
368 369 diff diff repository (or selected files)
369 370 export dump the header and diffs for one or more changesets
370 371 forget forget the specified files on the next commit
371 372 grep search for a pattern in specified files and revisions
372 373 heads show current repository heads or show branch heads
373 374 help show help for a given topic or a help overview
374 375 identify identify the working copy or specified revision
375 376 import import an ordered set of patches
376 377 incoming show new changesets found in source
377 378 init create a new repository in the given directory
378 379 locate locate files matching specific patterns
379 380 log show revision history of entire repository or files
380 381 manifest output the current or given revision of the project manifest
381 382 merge merge working directory with another revision
382 383 outgoing show changesets not found in the destination
383 384 parents show the parents of the working directory or revision
384 385 paths show aliases for remote repositories
385 386 pull pull changes from the specified source
386 387 push push changes to the specified destination
387 388 recover roll back an interrupted transaction
388 389 remove remove the specified files on the next commit
389 390 rename rename files; equivalent of copy + remove
390 391 resolve redo merges or set/view the merge status of files
391 392 revert restore individual files or directories to an earlier state
392 393 rollback roll back the last transaction (dangerous)
393 394 root print the root (top) of the current working directory
394 395 serve start stand-alone webserver
395 396 showconfig show combined config settings from all hgrc files
396 397 status show changed files in the working directory
397 398 summary summarize working directory state
398 399 tag add one or more tags for the current or given revision
399 400 tags list repository tags
400 401 tip show the tip revision
401 402 unbundle apply one or more changegroup files
402 403 update update working directory (or switch revisions)
403 404 verify verify the integrity of the repository
404 405 version output version and copyright information
405 406
406 407 additional help topics:
407 408
408 409 config Configuration Files
409 410 dates Date Formats
410 411 patterns File Name Patterns
411 412 environment Environment Variables
412 413 revisions Specifying Single Revisions
413 414 multirevs Specifying Multiple Revisions
414 415 revsets Specifying Revision Sets
415 416 diffs Diff Formats
417 merge-tools Merge Tools
416 418 templating Template Usage
417 419 urls URL Paths
418 420 extensions Using additional features
419 421 hgweb Configuring hgweb
420 422 glossary Glossary
421 423
422 424 use "hg -v help" to show aliases and global options
423 425
424 426 Not tested: --debugger
425 427
@@ -1,755 +1,758 b''
1 1 Short help:
2 2
3 3 $ hg
4 4 Mercurial Distributed SCM
5 5
6 6 basic commands:
7 7
8 8 add add the specified files on the next commit
9 9 annotate show changeset information by line for each file
10 10 clone make a copy of an existing repository
11 11 commit commit the specified files or all outstanding changes
12 12 diff diff repository (or selected files)
13 13 export dump the header and diffs for one or more changesets
14 14 forget forget the specified files on the next commit
15 15 init create a new repository in the given directory
16 16 log show revision history of entire repository or files
17 17 merge merge working directory with another revision
18 18 pull pull changes from the specified source
19 19 push push changes to the specified destination
20 20 remove remove the specified files on the next commit
21 21 serve start stand-alone webserver
22 22 status show changed files in the working directory
23 23 summary summarize working directory state
24 24 update update working directory (or switch revisions)
25 25
26 26 use "hg help" for the full list of commands or "hg -v" for details
27 27
28 28 $ hg -q
29 29 add add the specified files on the next commit
30 30 annotate show changeset information by line for each file
31 31 clone make a copy of an existing repository
32 32 commit commit the specified files or all outstanding changes
33 33 diff diff repository (or selected files)
34 34 export dump the header and diffs for one or more changesets
35 35 forget forget the specified files on the next commit
36 36 init create a new repository in the given directory
37 37 log show revision history of entire repository or files
38 38 merge merge working directory with another revision
39 39 pull pull changes from the specified source
40 40 push push changes to the specified destination
41 41 remove remove the specified files on the next commit
42 42 serve start stand-alone webserver
43 43 status show changed files in the working directory
44 44 summary summarize working directory state
45 45 update update working directory (or switch revisions)
46 46
47 47 $ hg help
48 48 Mercurial Distributed SCM
49 49
50 50 list of commands:
51 51
52 52 add add the specified files on the next commit
53 53 addremove add all new files, delete all missing files
54 54 annotate show changeset information by line for each file
55 55 archive create an unversioned archive of a repository revision
56 56 backout reverse effect of earlier changeset
57 57 bisect subdivision search of changesets
58 58 branch set or show the current branch name
59 59 branches list repository named branches
60 60 bundle create a changegroup file
61 61 cat output the current or given revision of files
62 62 clone make a copy of an existing repository
63 63 commit commit the specified files or all outstanding changes
64 64 copy mark files as copied for the next commit
65 65 diff diff repository (or selected files)
66 66 export dump the header and diffs for one or more changesets
67 67 forget forget the specified files on the next commit
68 68 grep search for a pattern in specified files and revisions
69 69 heads show current repository heads or show branch heads
70 70 help show help for a given topic or a help overview
71 71 identify identify the working copy or specified revision
72 72 import import an ordered set of patches
73 73 incoming show new changesets found in source
74 74 init create a new repository in the given directory
75 75 locate locate files matching specific patterns
76 76 log show revision history of entire repository or files
77 77 manifest output the current or given revision of the project manifest
78 78 merge merge working directory with another revision
79 79 outgoing show changesets not found in the destination
80 80 parents show the parents of the working directory or revision
81 81 paths show aliases for remote repositories
82 82 pull pull changes from the specified source
83 83 push push changes to the specified destination
84 84 recover roll back an interrupted transaction
85 85 remove remove the specified files on the next commit
86 86 rename rename files; equivalent of copy + remove
87 87 resolve redo merges or set/view the merge status of files
88 88 revert restore individual files or directories to an earlier state
89 89 rollback roll back the last transaction (dangerous)
90 90 root print the root (top) of the current working directory
91 91 serve start stand-alone webserver
92 92 showconfig show combined config settings from all hgrc files
93 93 status show changed files in the working directory
94 94 summary summarize working directory state
95 95 tag add one or more tags for the current or given revision
96 96 tags list repository tags
97 97 tip show the tip revision
98 98 unbundle apply one or more changegroup files
99 99 update update working directory (or switch revisions)
100 100 verify verify the integrity of the repository
101 101 version output version and copyright information
102 102
103 103 additional help topics:
104 104
105 105 config Configuration Files
106 106 dates Date Formats
107 107 patterns File Name Patterns
108 108 environment Environment Variables
109 109 revisions Specifying Single Revisions
110 110 multirevs Specifying Multiple Revisions
111 111 revsets Specifying Revision Sets
112 112 diffs Diff Formats
113 merge-tools Merge Tools
113 114 templating Template Usage
114 115 urls URL Paths
115 116 extensions Using additional features
116 117 hgweb Configuring hgweb
117 118 glossary Glossary
118 119
119 120 use "hg -v help" to show aliases and global options
120 121
121 122 $ hg -q help
122 123 add add the specified files on the next commit
123 124 addremove add all new files, delete all missing files
124 125 annotate show changeset information by line for each file
125 126 archive create an unversioned archive of a repository revision
126 127 backout reverse effect of earlier changeset
127 128 bisect subdivision search of changesets
128 129 branch set or show the current branch name
129 130 branches list repository named branches
130 131 bundle create a changegroup file
131 132 cat output the current or given revision of files
132 133 clone make a copy of an existing repository
133 134 commit commit the specified files or all outstanding changes
134 135 copy mark files as copied for the next commit
135 136 diff diff repository (or selected files)
136 137 export dump the header and diffs for one or more changesets
137 138 forget forget the specified files on the next commit
138 139 grep search for a pattern in specified files and revisions
139 140 heads show current repository heads or show branch heads
140 141 help show help for a given topic or a help overview
141 142 identify identify the working copy or specified revision
142 143 import import an ordered set of patches
143 144 incoming show new changesets found in source
144 145 init create a new repository in the given directory
145 146 locate locate files matching specific patterns
146 147 log show revision history of entire repository or files
147 148 manifest output the current or given revision of the project manifest
148 149 merge merge working directory with another revision
149 150 outgoing show changesets not found in the destination
150 151 parents show the parents of the working directory or revision
151 152 paths show aliases for remote repositories
152 153 pull pull changes from the specified source
153 154 push push changes to the specified destination
154 155 recover roll back an interrupted transaction
155 156 remove remove the specified files on the next commit
156 157 rename rename files; equivalent of copy + remove
157 158 resolve redo merges or set/view the merge status of files
158 159 revert restore individual files or directories to an earlier state
159 160 rollback roll back the last transaction (dangerous)
160 161 root print the root (top) of the current working directory
161 162 serve start stand-alone webserver
162 163 showconfig show combined config settings from all hgrc files
163 164 status show changed files in the working directory
164 165 summary summarize working directory state
165 166 tag add one or more tags for the current or given revision
166 167 tags list repository tags
167 168 tip show the tip revision
168 169 unbundle apply one or more changegroup files
169 170 update update working directory (or switch revisions)
170 171 verify verify the integrity of the repository
171 172 version output version and copyright information
172 173
173 174 additional help topics:
174 175
175 176 config Configuration Files
176 177 dates Date Formats
177 178 patterns File Name Patterns
178 179 environment Environment Variables
179 180 revisions Specifying Single Revisions
180 181 multirevs Specifying Multiple Revisions
181 182 revsets Specifying Revision Sets
182 183 diffs Diff Formats
184 merge-tools Merge Tools
183 185 templating Template Usage
184 186 urls URL Paths
185 187 extensions Using additional features
186 188 hgweb Configuring hgweb
187 189 glossary Glossary
188 190
189 191 Test short command list with verbose option
190 192
191 193 $ hg -v help shortlist
192 194 Mercurial Distributed SCM (version *) (glob)
193 195
194 196 Copyright (C) 2005-2010 Matt Mackall <mpm@selenic.com> and others
195 197 This is free software; see the source for copying conditions. There is NO
196 198 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
197 199
198 200 basic commands:
199 201
200 202 add:
201 203 add the specified files on the next commit
202 204 annotate, blame:
203 205 show changeset information by line for each file
204 206 clone:
205 207 make a copy of an existing repository
206 208 commit, ci:
207 209 commit the specified files or all outstanding changes
208 210 diff:
209 211 diff repository (or selected files)
210 212 export:
211 213 dump the header and diffs for one or more changesets
212 214 forget:
213 215 forget the specified files on the next commit
214 216 init:
215 217 create a new repository in the given directory
216 218 log, history:
217 219 show revision history of entire repository or files
218 220 merge:
219 221 merge working directory with another revision
220 222 pull:
221 223 pull changes from the specified source
222 224 push:
223 225 push changes to the specified destination
224 226 remove, rm:
225 227 remove the specified files on the next commit
226 228 serve:
227 229 start stand-alone webserver
228 230 status, st:
229 231 show changed files in the working directory
230 232 summary, sum:
231 233 summarize working directory state
232 234 update, up, checkout, co:
233 235 update working directory (or switch revisions)
234 236
235 237 global options:
236 238 -R --repository REPO repository root directory or name of overlay bundle
237 239 file
238 240 --cwd DIR change working directory
239 241 -y --noninteractive do not prompt, assume 'yes' for any required answers
240 242 -q --quiet suppress output
241 243 -v --verbose enable additional output
242 244 --config CONFIG [+] set/override config option (use 'section.name=value')
243 245 --debug enable debugging output
244 246 --debugger start debugger
245 247 --encoding ENCODE set the charset encoding (default: ascii)
246 248 --encodingmode MODE set the charset encoding mode (default: strict)
247 249 --traceback always print a traceback on exception
248 250 --time time how long the command takes
249 251 --profile print command execution profile
250 252 --version output version information and exit
251 253 -h --help display help and exit
252 254
253 255 [+] marked option can be specified multiple times
254 256
255 257 use "hg help" for the full list of commands
256 258
257 259 $ hg add -h
258 260 hg add [OPTION]... [FILE]...
259 261
260 262 add the specified files on the next commit
261 263
262 264 Schedule files to be version controlled and added to the repository.
263 265
264 266 The files will be added to the repository at the next commit. To undo an
265 267 add before that, see "hg forget".
266 268
267 269 If no names are given, add all files to the repository.
268 270
269 271 Returns 0 if all files are successfully added.
270 272
271 273 use "hg -v help add" to show verbose help
272 274
273 275 options:
274 276
275 277 -I --include PATTERN [+] include names matching the given patterns
276 278 -X --exclude PATTERN [+] exclude names matching the given patterns
277 279 -S --subrepos recurse into subrepositories
278 280 -n --dry-run do not perform actions, just print output
279 281
280 282 [+] marked option can be specified multiple times
281 283
282 284 use "hg -v help add" to show global options
283 285
284 286 Verbose help for add
285 287
286 288 $ hg add -hv
287 289 hg add [OPTION]... [FILE]...
288 290
289 291 add the specified files on the next commit
290 292
291 293 Schedule files to be version controlled and added to the repository.
292 294
293 295 The files will be added to the repository at the next commit. To undo an
294 296 add before that, see "hg forget".
295 297
296 298 If no names are given, add all files to the repository.
297 299
298 300 An example showing how new (unknown) files are added automatically by "hg
299 301 add":
300 302
301 303 $ ls
302 304 foo.c
303 305 $ hg status
304 306 ? foo.c
305 307 $ hg add
306 308 adding foo.c
307 309 $ hg status
308 310 A foo.c
309 311
310 312 Returns 0 if all files are successfully added.
311 313
312 314 options:
313 315
314 316 -I --include PATTERN [+] include names matching the given patterns
315 317 -X --exclude PATTERN [+] exclude names matching the given patterns
316 318 -S --subrepos recurse into subrepositories
317 319 -n --dry-run do not perform actions, just print output
318 320
319 321 global options:
320 322 -R --repository REPO repository root directory or name of overlay bundle
321 323 file
322 324 --cwd DIR change working directory
323 325 -y --noninteractive do not prompt, assume 'yes' for any required
324 326 answers
325 327 -q --quiet suppress output
326 328 -v --verbose enable additional output
327 329 --config CONFIG [+] set/override config option (use
328 330 'section.name=value')
329 331 --debug enable debugging output
330 332 --debugger start debugger
331 333 --encoding ENCODE set the charset encoding (default: ascii)
332 334 --encodingmode MODE set the charset encoding mode (default: strict)
333 335 --traceback always print a traceback on exception
334 336 --time time how long the command takes
335 337 --profile print command execution profile
336 338 --version output version information and exit
337 339 -h --help display help and exit
338 340
339 341 [+] marked option can be specified multiple times
340 342
341 343 Test help option with version option
342 344
343 345 $ hg add -h --version
344 346 Mercurial Distributed SCM (version *) (glob)
345 347
346 348 Copyright (C) 2005-2010 Matt Mackall <mpm@selenic.com> and others
347 349 This is free software; see the source for copying conditions. There is NO
348 350 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
349 351
350 352 hg add [OPTION]... [FILE]...
351 353
352 354 add the specified files on the next commit
353 355
354 356 Schedule files to be version controlled and added to the repository.
355 357
356 358 The files will be added to the repository at the next commit. To undo an
357 359 add before that, see "hg forget".
358 360
359 361 If no names are given, add all files to the repository.
360 362
361 363 Returns 0 if all files are successfully added.
362 364
363 365 use "hg -v help add" to show verbose help
364 366
365 367 options:
366 368
367 369 -I --include PATTERN [+] include names matching the given patterns
368 370 -X --exclude PATTERN [+] exclude names matching the given patterns
369 371 -S --subrepos recurse into subrepositories
370 372 -n --dry-run do not perform actions, just print output
371 373
372 374 [+] marked option can be specified multiple times
373 375
374 376 use "hg -v help add" to show global options
375 377
376 378 $ hg add --skjdfks
377 379 hg add: option --skjdfks not recognized
378 380 hg add [OPTION]... [FILE]...
379 381
380 382 add the specified files on the next commit
381 383
382 384 Schedule files to be version controlled and added to the repository.
383 385
384 386 The files will be added to the repository at the next commit. To undo an
385 387 add before that, see "hg forget".
386 388
387 389 If no names are given, add all files to the repository.
388 390
389 391 Returns 0 if all files are successfully added.
390 392
391 393 use "hg -v help add" to show verbose help
392 394
393 395 options:
394 396
395 397 -I --include PATTERN [+] include names matching the given patterns
396 398 -X --exclude PATTERN [+] exclude names matching the given patterns
397 399 -S --subrepos recurse into subrepositories
398 400 -n --dry-run do not perform actions, just print output
399 401
400 402 [+] marked option can be specified multiple times
401 403
402 404 use "hg -v help add" to show global options
403 405 [255]
404 406
405 407 Test ambiguous command help
406 408
407 409 $ hg help ad
408 410 list of commands:
409 411
410 412 add add the specified files on the next commit
411 413 addremove add all new files, delete all missing files
412 414
413 415 use "hg -v help ad" to show aliases and global options
414 416
415 417 Test command without options
416 418
417 419 $ hg help verify
418 420 hg verify
419 421
420 422 verify the integrity of the repository
421 423
422 424 Verify the integrity of the current repository.
423 425
424 426 This will perform an extensive check of the repository's integrity,
425 427 validating the hashes and checksums of each entry in the changelog,
426 428 manifest, and tracked files, as well as the integrity of their crosslinks
427 429 and indices.
428 430
429 431 Returns 0 on success, 1 if errors are encountered.
430 432
431 433 use "hg -v help verify" to show global options
432 434
433 435 $ hg help diff
434 436 hg diff [OPTION]... ([-c REV] | [-r REV1 [-r REV2]]) [FILE]...
435 437
436 438 diff repository (or selected files)
437 439
438 440 Show differences between revisions for the specified files.
439 441
440 442 Differences between files are shown using the unified diff format.
441 443
442 444 Note:
443 445 diff may generate unexpected results for merges, as it will default to
444 446 comparing against the working directory's first parent changeset if no
445 447 revisions are specified.
446 448
447 449 When two revision arguments are given, then changes are shown between
448 450 those revisions. If only one revision is specified then that revision is
449 451 compared to the working directory, and, when no revisions are specified,
450 452 the working directory files are compared to its parent.
451 453
452 454 Alternatively you can specify -c/--change with a revision to see the
453 455 changes in that changeset relative to its first parent.
454 456
455 457 Without the -a/--text option, diff will avoid generating diffs of files it
456 458 detects as binary. With -a, diff will generate a diff anyway, probably
457 459 with undesirable results.
458 460
459 461 Use the -g/--git option to generate diffs in the git extended diff format.
460 462 For more information, read "hg help diffs".
461 463
462 464 Returns 0 on success.
463 465
464 466 options:
465 467
466 468 -r --rev REV [+] revision
467 469 -c --change REV change made by revision
468 470 -a --text treat all files as text
469 471 -g --git use git extended diff format
470 472 --nodates omit dates from diff headers
471 473 -p --show-function show which function each change is in
472 474 --reverse produce a diff that undoes the changes
473 475 -w --ignore-all-space ignore white space when comparing lines
474 476 -b --ignore-space-change ignore changes in the amount of white space
475 477 -B --ignore-blank-lines ignore changes whose lines are all blank
476 478 -U --unified NUM number of lines of context to show
477 479 --stat output diffstat-style summary of changes
478 480 -I --include PATTERN [+] include names matching the given patterns
479 481 -X --exclude PATTERN [+] exclude names matching the given patterns
480 482 -S --subrepos recurse into subrepositories
481 483
482 484 [+] marked option can be specified multiple times
483 485
484 486 use "hg -v help diff" to show global options
485 487
486 488 $ hg help status
487 489 hg status [OPTION]... [FILE]...
488 490
489 491 aliases: st
490 492
491 493 show changed files in the working directory
492 494
493 495 Show status of files in the repository. If names are given, only files
494 496 that match are shown. Files that are clean or ignored or the source of a
495 497 copy/move operation, are not listed unless -c/--clean, -i/--ignored,
496 498 -C/--copies or -A/--all are given. Unless options described with "show
497 499 only ..." are given, the options -mardu are used.
498 500
499 501 Option -q/--quiet hides untracked (unknown and ignored) files unless
500 502 explicitly requested with -u/--unknown or -i/--ignored.
501 503
502 504 Note:
503 505 status may appear to disagree with diff if permissions have changed or
504 506 a merge has occurred. The standard diff format does not report
505 507 permission changes and diff only reports changes relative to one merge
506 508 parent.
507 509
508 510 If one revision is given, it is used as the base revision. If two
509 511 revisions are given, the differences between them are shown. The --change
510 512 option can also be used as a shortcut to list the changed files of a
511 513 revision from its first parent.
512 514
513 515 The codes used to show the status of files are:
514 516
515 517 M = modified
516 518 A = added
517 519 R = removed
518 520 C = clean
519 521 ! = missing (deleted by non-hg command, but still tracked)
520 522 ? = not tracked
521 523 I = ignored
522 524 = origin of the previous file listed as A (added)
523 525
524 526 Returns 0 on success.
525 527
526 528 options:
527 529
528 530 -A --all show status of all files
529 531 -m --modified show only modified files
530 532 -a --added show only added files
531 533 -r --removed show only removed files
532 534 -d --deleted show only deleted (but tracked) files
533 535 -c --clean show only files without changes
534 536 -u --unknown show only unknown (not tracked) files
535 537 -i --ignored show only ignored files
536 538 -n --no-status hide status prefix
537 539 -C --copies show source of copied files
538 540 -0 --print0 end filenames with NUL, for use with xargs
539 541 --rev REV [+] show difference from revision
540 542 --change REV list the changed files of a revision
541 543 -I --include PATTERN [+] include names matching the given patterns
542 544 -X --exclude PATTERN [+] exclude names matching the given patterns
543 545 -S --subrepos recurse into subrepositories
544 546
545 547 [+] marked option can be specified multiple times
546 548
547 549 use "hg -v help status" to show global options
548 550
549 551 $ hg -q help status
550 552 hg status [OPTION]... [FILE]...
551 553
552 554 show changed files in the working directory
553 555
554 556 $ hg help foo
555 557 hg: unknown command 'foo'
556 558 Mercurial Distributed SCM
557 559
558 560 basic commands:
559 561
560 562 add add the specified files on the next commit
561 563 annotate show changeset information by line for each file
562 564 clone make a copy of an existing repository
563 565 commit commit the specified files or all outstanding changes
564 566 diff diff repository (or selected files)
565 567 export dump the header and diffs for one or more changesets
566 568 forget forget the specified files on the next commit
567 569 init create a new repository in the given directory
568 570 log show revision history of entire repository or files
569 571 merge merge working directory with another revision
570 572 pull pull changes from the specified source
571 573 push push changes to the specified destination
572 574 remove remove the specified files on the next commit
573 575 serve start stand-alone webserver
574 576 status show changed files in the working directory
575 577 summary summarize working directory state
576 578 update update working directory (or switch revisions)
577 579
578 580 use "hg help" for the full list of commands or "hg -v" for details
579 581 [255]
580 582
581 583 $ hg skjdfks
582 584 hg: unknown command 'skjdfks'
583 585 Mercurial Distributed SCM
584 586
585 587 basic commands:
586 588
587 589 add add the specified files on the next commit
588 590 annotate show changeset information by line for each file
589 591 clone make a copy of an existing repository
590 592 commit commit the specified files or all outstanding changes
591 593 diff diff repository (or selected files)
592 594 export dump the header and diffs for one or more changesets
593 595 forget forget the specified files on the next commit
594 596 init create a new repository in the given directory
595 597 log show revision history of entire repository or files
596 598 merge merge working directory with another revision
597 599 pull pull changes from the specified source
598 600 push push changes to the specified destination
599 601 remove remove the specified files on the next commit
600 602 serve start stand-alone webserver
601 603 status show changed files in the working directory
602 604 summary summarize working directory state
603 605 update update working directory (or switch revisions)
604 606
605 607 use "hg help" for the full list of commands or "hg -v" for details
606 608 [255]
607 609
608 610 $ cat > helpext.py <<EOF
609 611 > import os
610 612 > from mercurial import commands
611 613 >
612 614 > def nohelp(ui, *args, **kwargs):
613 615 > pass
614 616 >
615 617 > cmdtable = {
616 618 > "nohelp": (nohelp, [], "hg nohelp"),
617 619 > }
618 620 >
619 621 > commands.norepo += ' nohelp'
620 622 > EOF
621 623 $ echo '[extensions]' >> $HGRCPATH
622 624 $ echo "helpext = `pwd`/helpext.py" >> $HGRCPATH
623 625
624 626 Test command with no help text
625 627
626 628 $ hg help nohelp
627 629 hg nohelp
628 630
629 631 (no help text available)
630 632
631 633 use "hg -v help nohelp" to show global options
632 634
633 635 Test that default list of commands omits extension commands
634 636
635 637 $ hg help
636 638 Mercurial Distributed SCM
637 639
638 640 list of commands:
639 641
640 642 add add the specified files on the next commit
641 643 addremove add all new files, delete all missing files
642 644 annotate show changeset information by line for each file
643 645 archive create an unversioned archive of a repository revision
644 646 backout reverse effect of earlier changeset
645 647 bisect subdivision search of changesets
646 648 branch set or show the current branch name
647 649 branches list repository named branches
648 650 bundle create a changegroup file
649 651 cat output the current or given revision of files
650 652 clone make a copy of an existing repository
651 653 commit commit the specified files or all outstanding changes
652 654 copy mark files as copied for the next commit
653 655 diff diff repository (or selected files)
654 656 export dump the header and diffs for one or more changesets
655 657 forget forget the specified files on the next commit
656 658 grep search for a pattern in specified files and revisions
657 659 heads show current repository heads or show branch heads
658 660 help show help for a given topic or a help overview
659 661 identify identify the working copy or specified revision
660 662 import import an ordered set of patches
661 663 incoming show new changesets found in source
662 664 init create a new repository in the given directory
663 665 locate locate files matching specific patterns
664 666 log show revision history of entire repository or files
665 667 manifest output the current or given revision of the project manifest
666 668 merge merge working directory with another revision
667 669 outgoing show changesets not found in the destination
668 670 parents show the parents of the working directory or revision
669 671 paths show aliases for remote repositories
670 672 pull pull changes from the specified source
671 673 push push changes to the specified destination
672 674 recover roll back an interrupted transaction
673 675 remove remove the specified files on the next commit
674 676 rename rename files; equivalent of copy + remove
675 677 resolve redo merges or set/view the merge status of files
676 678 revert restore individual files or directories to an earlier state
677 679 rollback roll back the last transaction (dangerous)
678 680 root print the root (top) of the current working directory
679 681 serve start stand-alone webserver
680 682 showconfig show combined config settings from all hgrc files
681 683 status show changed files in the working directory
682 684 summary summarize working directory state
683 685 tag add one or more tags for the current or given revision
684 686 tags list repository tags
685 687 tip show the tip revision
686 688 unbundle apply one or more changegroup files
687 689 update update working directory (or switch revisions)
688 690 verify verify the integrity of the repository
689 691 version output version and copyright information
690 692
691 693 enabled extensions:
692 694
693 695 helpext (no help text available)
694 696
695 697 additional help topics:
696 698
697 699 config Configuration Files
698 700 dates Date Formats
699 701 patterns File Name Patterns
700 702 environment Environment Variables
701 703 revisions Specifying Single Revisions
702 704 multirevs Specifying Multiple Revisions
703 705 revsets Specifying Revision Sets
704 706 diffs Diff Formats
707 merge-tools Merge Tools
705 708 templating Template Usage
706 709 urls URL Paths
707 710 extensions Using additional features
708 711 hgweb Configuring hgweb
709 712 glossary Glossary
710 713
711 714 use "hg -v help" to show aliases and global options
712 715
713 716 Test list of commands with command with no help text
714 717
715 718 $ hg help helpext
716 719 helpext extension - no help text available
717 720
718 721 list of commands:
719 722
720 723 nohelp (no help text available)
721 724
722 725 use "hg -v help helpext" to show aliases and global options
723 726
724 727 Test a help topic
725 728
726 729 $ hg help revs
727 730 Specifying Single Revisions
728 731
729 732 Mercurial supports several ways to specify individual revisions.
730 733
731 734 A plain integer is treated as a revision number. Negative integers are
732 735 treated as sequential offsets from the tip, with -1 denoting the tip, -2
733 736 denoting the revision prior to the tip, and so forth.
734 737
735 738 A 40-digit hexadecimal string is treated as a unique revision identifier.
736 739
737 740 A hexadecimal string less than 40 characters long is treated as a unique
738 741 revision identifier and is referred to as a short-form identifier. A
739 742 short-form identifier is only valid if it is the prefix of exactly one
740 743 full-length identifier.
741 744
742 745 Any other string is treated as a tag or branch name. A tag name is a
743 746 symbolic name associated with a revision identifier. A branch name denotes
744 747 the tipmost revision of that branch. Tag and branch names must not contain
745 748 the ":" character.
746 749
747 750 The reserved name "tip" is a special tag that always identifies the most
748 751 recent revision.
749 752
750 753 The reserved name "null" indicates the null revision. This is the revision
751 754 of an empty repository, and the parent of revision 0.
752 755
753 756 The reserved name "." indicates the working directory parent. If no
754 757 working directory is checked out, it is equivalent to null. If an
755 758 uncommitted merge is in progress, "." is the revision of the first parent.
General Comments 0
You need to be logged in to leave comments. Login now