author | Bryan O'Sullivan <bos@serpentine.com> |
Sun, 14 Aug 2005 21:33:09 -0800 | |
changeset 907 | 652507dc9fce |
parent 896 | 01215ad04283 |
child 910 | 891b6a262c4b |
permissions | -rw-r--r-- |
177 | 1 |
HG(1) |
2 |
===== |
|
3 |
Matt Mackall <mpm@selenic.com> |
|
4 |
||
5 |
NAME |
|
6 |
---- |
|
438 | 7 |
hg - Mercurial source code management system |
177 | 8 |
|
9 |
SYNOPSIS |
|
10 |
-------- |
|
11 |
'hg' [-v -d -q -y] <command> [command options] [files] |
|
12 |
||
13 |
DESCRIPTION |
|
14 |
----------- |
|
15 |
The hg(1) command provides a command line interface to the Mercurial system. |
|
16 |
||
17 |
OPTIONS |
|
18 |
------- |
|
438 | 19 |
|
177 | 20 |
--debug, -d:: |
21 |
enable debugging output |
|
22 |
||
23 |
--quiet, -q:: |
|
24 |
suppress output |
|
25 |
||
26 |
--verbose, -v:: |
|
27 |
enable additional output |
|
28 |
||
29 |
--noninteractive, -y:: |
|
30 |
do not prompt, assume 'yes' for any required answers |
|
31 |
||
32 |
COMMAND ELEMENTS |
|
33 |
---------------- |
|
34 |
||
35 |
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
|
36 |
indicates one or more filename or relative path filenames; see |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
37 |
"FILE NAME PATTERNS" for information on pattern matching |
177 | 38 |
|
39 |
path:: |
|
40 |
indicates a path on the local machine |
|
41 |
||
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
42 |
revision:: |
438 | 43 |
indicates a changeset which can be specified as a changeset revision |
44 |
number, a tag, or a unique substring of the changeset hash value |
|
177 | 45 |
|
46 |
repository path:: |
|
498 | 47 |
either the pathname of a local repository or the URI of a remote |
181
038e4d8602bd
updated for .hgpaths and http/old-http protocol name change
jake@edge2.net
parents:
177
diff
changeset
|
48 |
repository. There are two available URI protocols, http:// which is |
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
49 |
fast and the old-http:// protocol which is much slower but does not |
438 | 50 |
require a special server on the web host. |
177 | 51 |
|
52 |
COMMANDS |
|
53 |
-------- |
|
438 | 54 |
|
724
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
55 |
add [options] [files ...]:: |
497 | 56 |
Schedule files to be version controlled and added to the repository. |
57 |
||
498 | 58 |
The files will be added to the repository at the next commit. |
177 | 59 |
|
724
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
60 |
If no names are given, add all files in the current directory and |
728 | 61 |
its subdirectories. |
724
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
62 |
|
766
b444a7e053f1
Get addremove to use new walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
761
diff
changeset
|
63 |
addremove [options] [files ...]:: |
497 | 64 |
Add all new files and remove all missing files from the repository. |
65 |
||
66 |
New files are ignored if they match any of the patterns in .hgignore. As |
|
498 | 67 |
with add, these changes take effect at the next commit. |
177 | 68 |
|
438 | 69 |
annotate [-r <rev> -u -n -c] [files ...]:: |
497 | 70 |
List changes in files, showing the revision id responsible for each line |
71 |
||
72 |
This command is useful to discover who did a change or when a change took |
|
73 |
place. |
|
74 |
||
438 | 75 |
options: |
811
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
76 |
-I, --include <pat> include names matching the given patterns |
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
77 |
-X, --exclude <pat> exclude names matching the given patterns |
438 | 78 |
-r, --revision <rev> annotate the specified revision |
79 |
-u, --user list the author |
|
80 |
-c, --changeset list the changeset |
|
81 |
-n, --number list the revision number (default) |
|
177 | 82 |
|
438 | 83 |
cat <file> [revision]:: |
497 | 84 |
Output to stdout the given revision for the specified file. |
85 |
||
498 | 86 |
If no revision is given then the tip is used. |
177 | 87 |
|
485 | 88 |
clone [-U] <source> [dest]:: |
497 | 89 |
Create a copy of an existing repository in a new directory. |
90 |
||
523
003df62ae39f
[PATCH] Force "hg clone" to always create a new directory
mpm@selenic.com
parents:
509
diff
changeset
|
91 |
If no destination directory name is specified, it defaults to the |
003df62ae39f
[PATCH] Force "hg clone" to always create a new directory
mpm@selenic.com
parents:
509
diff
changeset
|
92 |
basename of the source. |
497 | 93 |
|
498 | 94 |
The source is added to the new repository's .hg/hgrc file to be used in |
497 | 95 |
future pulls. |
96 |
||
498 | 97 |
For efficiency, hardlinks are used for cloning whenever the |
98 |
source and destination are on the same filesystem. |
|
497 | 99 |
|
100 |
options: |
|
505 | 101 |
-U, --noupdate do not update the new working directory |
497 | 102 |
|
813
80fd2958235a
Adapt commit to use file matching code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
811
diff
changeset
|
103 |
commit [options] [files...]:: |
498 | 104 |
Commit changes to the given files into the repository. |
497 | 105 |
|
498 | 106 |
If a list of files is omitted, all changes reported by "hg status" |
813
80fd2958235a
Adapt commit to use file matching code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
811
diff
changeset
|
107 |
from the root of the repository will be commited. |
497 | 108 |
|
498 | 109 |
The HGEDITOR or EDITOR environment variables are used to start an |
110 |
editor to add a commit comment. |
|
497 | 111 |
|
112 |
Options: |
|
113 |
||
114 |
-A, --addremove run addremove during commit |
|
813
80fd2958235a
Adapt commit to use file matching code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
811
diff
changeset
|
115 |
-I, --include <pat> include names matching the given patterns |
80fd2958235a
Adapt commit to use file matching code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
811
diff
changeset
|
116 |
-X, --exclude <pat> exclude names matching the given patterns |
761
0fb498458905
Change all references to -t --text commit message to -m and --message.
Andrew Thompson <andrewkt@aktzero.com>
parents:
750
diff
changeset
|
117 |
-m, --message <text> use <text> as commit message |
497 | 118 |
-l, --logfile <file> show the commit message for the given file |
119 |
-d, --date <datecode> record datecode as commit date |
|
120 |
-u, --user <user> record user as commiter |
|
121 |
||
122 |
aliases: ci |
|
123 |
||
124 |
copy <source> <dest>:: |
|
125 |
Mark <dest> file as a copy or rename of a <source> one |
|
126 |
||
127 |
This command takes effect for the next commit. |
|
128 |
||
129 |
diff [-r revision] [-r revision] [files ...]:: |
|
130 |
Show differences between revisions for the specified files. |
|
131 |
||
132 |
Differences between files are shown using the unified diff format. |
|
133 |
||
498 | 134 |
When two revision arguments are given, then changes are shown |
135 |
between those revisions. If only one revision is specified then |
|
136 |
that revision is compared to the working directory, and, when no |
|
137 |
revisions are specified, the working directory files are compared |
|
138 |
to its parent. |
|
497 | 139 |
|
734
d4e161d60f61
Update docs for annotate and diff.
Bryan O'Sullivan <bos@serpentine.com>
parents:
731
diff
changeset
|
140 |
options: |
811
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
141 |
-I, --include <pat> include names matching the given patterns |
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
142 |
-X, --exclude <pat> exclude names matching the given patterns |
734
d4e161d60f61
Update docs for annotate and diff.
Bryan O'Sullivan <bos@serpentine.com>
parents:
731
diff
changeset
|
143 |
|
580 | 144 |
export [-o filespec] [revision] ...:: |
145 |
Print the changeset header and diffs for one or more revisions. |
|
146 |
||
147 |
The information shown in the changeset header is: author, |
|
148 |
changeset hash, parent and commit comment. |
|
149 |
||
150 |
Output may be to a file, in which case the name of the file is |
|
151 |
given using a format string. The formatting rules are as follows: |
|
497 | 152 |
|
580 | 153 |
%% literal "%" character |
154 |
%H changeset hash (40 bytes of hexadecimal) |
|
155 |
%N number of patches being generated |
|
156 |
%R changeset revision number |
|
157 |
%b basename of the exporting repository |
|
158 |
%h short-form changeset hash (12 bytes of hexadecimal) |
|
159 |
%n zero-padded sequence number, starting at 1 |
|
160 |
%r zero-padded changeset revision number |
|
161 |
||
162 |
Options: |
|
163 |
||
164 |
-o, --output <filespec> print output to file with formatted named |
|
497 | 165 |
|
810
790a0ff306f2
Move commands.forget over to using new walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
766
diff
changeset
|
166 |
forget [options] [files]:: |
497 | 167 |
Undo an 'hg add' scheduled for the next commit. |
168 |
||
810
790a0ff306f2
Move commands.forget over to using new walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
766
diff
changeset
|
169 |
options: |
811
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
170 |
-I, --include <pat> include names matching the given patterns |
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
171 |
-X, --exclude <pat> exclude names matching the given patterns |
810
790a0ff306f2
Move commands.forget over to using new walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
766
diff
changeset
|
172 |
|
497 | 173 |
heads:: |
174 |
Show all repository head changesets. |
|
175 |
||
498 | 176 |
Repository "heads" are changesets that don't have children |
177 |
changesets. They are where development generally takes place and |
|
178 |
are the usual targets for update and merge operations. |
|
497 | 179 |
|
180 |
identify:: |
|
181 |
Print a short summary of the current state of the repo. |
|
182 |
||
183 |
This summary identifies the repository state using one or two parent |
|
184 |
hash identifiers, followed by a "+" if there are uncommitted changes |
|
185 |
in the working directory, followed by a list of tags for this revision. |
|
186 |
||
187 |
aliases: id |
|
188 |
||
189 |
import [-p <n> -b <base> -q] <patches>:: |
|
190 |
Import a list of patches and commit them individually. |
|
191 |
||
192 |
options: |
|
193 |
-p, --strip <n> directory strip option for patch. This has the same |
|
194 |
meaning as the correnponding patch option |
|
195 |
-b <path> base directory to read patches from |
|
196 |
||
197 |
aliases: patch |
|
198 |
||
907
652507dc9fce
Modify init command to take an optional directory to set up.
Bryan O'Sullivan <bos@serpentine.com>
parents:
896
diff
changeset
|
199 |
init [dest]:: |
652507dc9fce
Modify init command to take an optional directory to set up.
Bryan O'Sullivan <bos@serpentine.com>
parents:
896
diff
changeset
|
200 |
Initialize a new repository in the given directory. If the given |
652507dc9fce
Modify init command to take an optional directory to set up.
Bryan O'Sullivan <bos@serpentine.com>
parents:
896
diff
changeset
|
201 |
directory does not exist, it is created. |
652507dc9fce
Modify init command to take an optional directory to set up.
Bryan O'Sullivan <bos@serpentine.com>
parents:
896
diff
changeset
|
202 |
|
652507dc9fce
Modify init command to take an optional directory to set up.
Bryan O'Sullivan <bos@serpentine.com>
parents:
896
diff
changeset
|
203 |
If no directory is given, the current directory is used. |
177 | 204 |
|
724
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
205 |
locate [options] [files]:: |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
206 |
Print all files under Mercurial control whose names match the |
629
2fdf3b1659b9
Clarify man page entry for locate a little.
Bryan O'Sullivan <bos@serpentine.com>
parents:
627
diff
changeset
|
207 |
given patterns. |
627 | 208 |
|
209 |
This command searches the current directory and its |
|
210 |
subdirectories. To search an entire repository, move to the root |
|
211 |
of the repository. |
|
212 |
||
213 |
If no patterns are given to match, this command prints all file |
|
214 |
names. |
|
215 |
||
216 |
If you want to feed the output of this command into the "xargs" |
|
217 |
command, use the "-0" option to both this command and "xargs". |
|
218 |
This will avoid the problem of "xargs" treating single filenames |
|
219 |
that contain white space as multiple file names. |
|
220 |
||
221 |
options: |
|
222 |
||
223 |
-0, --print0 end filenames with NUL, for use with xargs |
|
224 |
-f, --fullpath print complete paths from the filesystem root |
|
811
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
225 |
-I, --include <pat> include names matching the given patterns |
627 | 226 |
-r, --rev <rev> search the repository as it stood at rev |
811
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
227 |
-X, --exclude <pat> exclude names matching the given patterns |
627 | 228 |
|
612
9cd745437269
On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
Alecs King <alecsk@gmail.com>
parents:
608
diff
changeset
|
229 |
log [-r revision ...] [-p] [file]:: |
509 | 230 |
Print the revision history of the specified file or the entire project. |
177 | 231 |
|
509 | 232 |
By default this command outputs: changeset id and hash, tags, |
233 |
parents, user, date and time, and a summary for each commit. The |
|
234 |
-v switch adds some more detail, such as changed files, manifest |
|
235 |
hashes or message signatures. |
|
236 |
||
612
9cd745437269
On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
Alecs King <alecsk@gmail.com>
parents:
608
diff
changeset
|
237 |
options: |
9cd745437269
On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
Alecs King <alecsk@gmail.com>
parents:
608
diff
changeset
|
238 |
-r, --rev <A>, ... When a revision argument is given, only this file or |
9cd745437269
On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
Alecs King <alecsk@gmail.com>
parents:
608
diff
changeset
|
239 |
changelog revision is displayed. With two revision |
9cd745437269
On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
Alecs King <alecsk@gmail.com>
parents:
608
diff
changeset
|
240 |
arguments all revisions in this range are listed. |
9cd745437269
On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
Alecs King <alecsk@gmail.com>
parents:
608
diff
changeset
|
241 |
Additional revision arguments may be given repeating |
9cd745437269
On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
Alecs King <alecsk@gmail.com>
parents:
608
diff
changeset
|
242 |
the above cycle. |
9cd745437269
On Sat, Jul 02, 2005 at 02:11:34PM -0700, Matt Mackall wrote:
Alecs King <alecsk@gmail.com>
parents:
608
diff
changeset
|
243 |
-p, --patch show patch |
552
2204311609a0
Allow specifying revisions in 'hg log' like with 'hg diff'.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
523
diff
changeset
|
244 |
|
509 | 245 |
aliases: history |
497 | 246 |
|
438 | 247 |
manifest [revision]:: |
497 | 248 |
Print a list of version controlled files for the given revision. |
249 |
||
250 |
The manifest is the list of files being version controlled. If no revision |
|
251 |
is given then the tip is used. |
|
438 | 252 |
|
253 |
parents:: |
|
254 |
Print the working directory's parent revisions. |
|
255 |
||
256 |
pull <repository path>:: |
|
498 | 257 |
Pull changes from a remote repository to a local one. |
497 | 258 |
|
498 | 259 |
This finds all changes from the repository at the specified path |
260 |
or URL and adds them to the local repository. By default, this |
|
261 |
does not update the copy of the project in the working directory. |
|
438 | 262 |
|
263 |
options: |
|
264 |
-u, --update update the working directory to tip after pull |
|
265 |
||
266 |
push <destination>:: |
|
497 | 267 |
Push changes from the local repository to the given destination. |
268 |
||
498 | 269 |
This is the symmetrical operation for pull. It helps to move |
270 |
changes from the current repository to a different one. If the |
|
271 |
destination is local this is identical to a pull in that directory |
|
272 |
from the current one. |
|
438 | 273 |
|
274 |
The other currently available push method is SSH. This requires an |
|
275 |
accessible shell account on the destination machine and a copy of |
|
276 |
hg in the remote path. Destinations are specified in the following |
|
277 |
form: |
|
278 |
||
279 |
ssh://[user@]host[:port]/path |
|
280 |
||
747 | 281 |
rawcommit [-p -d -u -F -m -l]:: |
497 | 282 |
Lowlevel commit, for use in helper scripts. |
283 |
||
284 |
This command is not intended to be used by normal users, as it is |
|
285 |
primarily useful for importing from other SCMs. |
|
177 | 286 |
|
196
48827121af7e
add export, recover, and undo to the man page
jake@edge2.net
parents:
182
diff
changeset
|
287 |
recover:: |
497 | 288 |
Recover from an interrupted commit or pull. |
289 |
||
290 |
This command tries to fix the repository status after an interrupted |
|
291 |
operation. It should only be necessary when Mercurial suggests it. |
|
196
48827121af7e
add export, recover, and undo to the man page
jake@edge2.net
parents:
182
diff
changeset
|
292 |
|
177 | 293 |
remove [files ...]:: |
497 | 294 |
Schedule the indicated files for removal from the repository. |
295 |
||
498 | 296 |
This command shedules the files to be removed at the next commit. |
297 |
This only removes files from the current branch, not from the |
|
298 |
entire project history. |
|
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
299 |
|
438 | 300 |
aliases: rm |
177 | 301 |
|
588 | 302 |
revert [names ...]:: |
303 |
Revert any uncommitted modifications made to the named files or |
|
304 |
directories. This restores the contents of the affected files to |
|
305 |
an unmodified state. |
|
306 |
||
307 |
If a file has been deleted, it is recreated. If the executable |
|
308 |
mode of a file was changed, it is reset. |
|
309 |
||
310 |
If a directory is given, all files in that directory and its |
|
311 |
subdirectories are reverted. |
|
312 |
||
313 |
If no arguments are given, all files in the current directory and |
|
314 |
its subdirectories are reverted. |
|
315 |
||
316 |
options: |
|
317 |
-r, --rev <rev> revision to revert to |
|
318 |
-n, --nonrecursive do not recurse into subdirectories |
|
319 |
||
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
320 |
root:: |
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
321 |
Print the root directory of the current repository. |
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
322 |
|
606
ea4526f9b1a5
[PATCH] Fix thinko in "serve" man page entry.
mpm@selenic.com
parents:
605
diff
changeset
|
323 |
serve [options]:: |
438 | 324 |
Start a local HTTP repository browser and pull server. |
325 |
||
605
8e82fd763be2
[PATCH] Get "hg serve" to optionally log accesses and errors to files
mpm@selenic.com
parents:
595
diff
changeset
|
326 |
By default, the server logs accesses to stdout and errors to |
8e82fd763be2
[PATCH] Get "hg serve" to optionally log accesses and errors to files
mpm@selenic.com
parents:
595
diff
changeset
|
327 |
stderr. Use the "-A" and "-E" options to log to files. |
8e82fd763be2
[PATCH] Get "hg serve" to optionally log accesses and errors to files
mpm@selenic.com
parents:
595
diff
changeset
|
328 |
|
438 | 329 |
options: |
605
8e82fd763be2
[PATCH] Get "hg serve" to optionally log accesses and errors to files
mpm@selenic.com
parents:
595
diff
changeset
|
330 |
-A, --accesslog <file> name of access log file to write to |
8e82fd763be2
[PATCH] Get "hg serve" to optionally log accesses and errors to files
mpm@selenic.com
parents:
595
diff
changeset
|
331 |
-E, --errorlog <file> name of error log file to write to |
8e82fd763be2
[PATCH] Get "hg serve" to optionally log accesses and errors to files
mpm@selenic.com
parents:
595
diff
changeset
|
332 |
-a, --address <addr> address to use |
8e82fd763be2
[PATCH] Get "hg serve" to optionally log accesses and errors to files
mpm@selenic.com
parents:
595
diff
changeset
|
333 |
-p, --port <n> port to use (default: 8000) |
8e82fd763be2
[PATCH] Get "hg serve" to optionally log accesses and errors to files
mpm@selenic.com
parents:
595
diff
changeset
|
334 |
-n, --name <name> name to show in web pages (default: working dir) |
438 | 335 |
-t, --templatedir <path> web templates to use |
825
0108c602feb9
Add an option to hg serve to serve file using IPv6
Samuel Tardieu <sam@rfc1149.net>
parents:
814
diff
changeset
|
336 |
-6, --ipv6 use IPv6 in addition to IPv4 |
177 | 337 |
|
731
91ca3afab8e8
Add name matching to status command.
Bryan O'Sullivan <bos@serpentine.com>
parents:
728
diff
changeset
|
338 |
status [options] [files]:: |
91ca3afab8e8
Add name matching to status command.
Bryan O'Sullivan <bos@serpentine.com>
parents:
728
diff
changeset
|
339 |
Show changed files in the working directory. If no names are |
91ca3afab8e8
Add name matching to status command.
Bryan O'Sullivan <bos@serpentine.com>
parents:
728
diff
changeset
|
340 |
given, all files are shown. Otherwise, only files matching the |
91ca3afab8e8
Add name matching to status command.
Bryan O'Sullivan <bos@serpentine.com>
parents:
728
diff
changeset
|
341 |
given names are shown. |
438 | 342 |
|
497 | 343 |
The codes used to show the status of files are: |
344 |
||
746 | 345 |
M = changed |
438 | 346 |
A = added |
347 |
R = removed |
|
348 |
? = not tracked |
|
349 |
||
731
91ca3afab8e8
Add name matching to status command.
Bryan O'Sullivan <bos@serpentine.com>
parents:
728
diff
changeset
|
350 |
options: |
91ca3afab8e8
Add name matching to status command.
Bryan O'Sullivan <bos@serpentine.com>
parents:
728
diff
changeset
|
351 |
|
840
141744605b51
hg status: added options to select files by status.
tksoh@users.sourceforge.net
parents:
839
diff
changeset
|
352 |
-m, --modified show only modified files |
141744605b51
hg status: added options to select files by status.
tksoh@users.sourceforge.net
parents:
839
diff
changeset
|
353 |
-a, --added show only added files |
141744605b51
hg status: added options to select files by status.
tksoh@users.sourceforge.net
parents:
839
diff
changeset
|
354 |
-r, --removed show only removed files |
141744605b51
hg status: added options to select files by status.
tksoh@users.sourceforge.net
parents:
839
diff
changeset
|
355 |
-u, --unknown show only unknown (not tracked) files |
811
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
356 |
-I, --include <pat> include names matching the given patterns |
fa9aaf3bbdd7
Fix documentation of -I and -X options.
Bryan O'Sullivan <bos@serpentine.com>
parents:
810
diff
changeset
|
357 |
-X, --exclude <pat> exclude names matching the given patterns |
731
91ca3afab8e8
Add name matching to status command.
Bryan O'Sullivan <bos@serpentine.com>
parents:
728
diff
changeset
|
358 |
|
750 | 359 |
tag [-l -m <text> -d <datecode> -u <user>] <name> [revision]:: |
497 | 360 |
Name a particular revision using <name>. |
361 |
||
362 |
Tags are used to name particular revisions of the repository and are |
|
363 |
very useful to compare different revision, to go back to significant |
|
498 | 364 |
earlier versions or to mark branch points as releases, etc. |
497 | 365 |
|
498 | 366 |
If no revision is given, the tip is used. |
438 | 367 |
|
498 | 368 |
To facilitate version control, distribution, and merging of tags, |
369 |
they are stored as a file named ".hgtags" which is managed |
|
370 |
similarly to other project files and can be hand-edited if |
|
371 |
necessary. |
|
372 |
||
438 | 373 |
options: |
631
a287f6cd9c6b
Update documentation of hg tag
Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>
parents:
629
diff
changeset
|
374 |
-l, --local make the tag local |
761
0fb498458905
Change all references to -t --text commit message to -m and --message.
Andrew Thompson <andrewkt@aktzero.com>
parents:
750
diff
changeset
|
375 |
-m, --message <text> message for tag commit log entry |
438 | 376 |
-d, --date <datecode> datecode for commit |
377 |
-u, --user <user> user for commit |
|
177 | 378 |
|
631
a287f6cd9c6b
Update documentation of hg tag
Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>
parents:
629
diff
changeset
|
379 |
Note: Local tags are not version-controlled or distributed and are |
a287f6cd9c6b
Update documentation of hg tag
Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>
parents:
629
diff
changeset
|
380 |
stored in the .hg/localtags file. If there exists a local tag and |
a287f6cd9c6b
Update documentation of hg tag
Radoslaw Szkodzinski <astralstorm@gorzow.mm.pl>
parents:
629
diff
changeset
|
381 |
a public tag with the same name, local tag is used. |
498 | 382 |
|
177 | 383 |
tags:: |
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
384 |
List the repository tags. |
438 | 385 |
|
498 | 386 |
This lists both regular and local tags. |
497 | 387 |
|
438 | 388 |
tip:: |
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
389 |
Show the tip revision. |
177 | 390 |
|
196
48827121af7e
add export, recover, and undo to the man page
jake@edge2.net
parents:
182
diff
changeset
|
391 |
undo:: |
438 | 392 |
Undo the last commit or pull transaction. |
393 |
||
595 | 394 |
Roll back the last pull or commit transaction on the |
395 |
repository, restoring the project to its earlier state. |
|
396 |
||
397 |
This command should be used with care. There is only one level of |
|
398 |
undo and there is no redo. |
|
399 |
||
400 |
This command is not intended for use on public repositories. Once |
|
401 |
a change is visible for pull by other users, undoing it locally is |
|
402 |
ineffective. |
|
403 |
||
438 | 404 |
update [-m -C] [revision]:: |
498 | 405 |
Update the working directory to the specified revision. |
438 | 406 |
|
498 | 407 |
By default, update will refuse to run if doing so would require |
408 |
merging or discarding local changes. |
|
409 |
||
410 |
With the -m option, a merge will be performed. |
|
411 |
||
412 |
With the -C option, local changes will be lost. |
|
497 | 413 |
|
438 | 414 |
options: |
415 |
-m, --merge allow merging of branches |
|
416 |
-C, --clean overwrite locally modified files |
|
417 |
||
418 |
aliases: up checkout co |
|
419 |
||
420 |
verify:: |
|
421 |
Verify the integrity of the current repository. |
|
422 |
||
423 |
This will perform an extensive check of the repository's |
|
424 |
integrity, validating the hashes and checksums of each entry in |
|
425 |
the changelog, manifest, and tracked files, as well as the |
|
426 |
integrity of their crosslinks and indices. |
|
427 |
||
724
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
428 |
FILE NAME PATTERNS |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
429 |
------------------ |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
430 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
431 |
Mercurial accepts several notations for identifying one or more |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
432 |
file at a time. |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
433 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
434 |
By default, Mercurial treats file names as shell-style extended |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
435 |
glob patterns. |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
436 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
437 |
Alternate pattern notations must be specified explicitly. |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
438 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
439 |
To use a plain path name without any pattern matching, start a |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
440 |
name with "path:". These path names must match completely, from |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
441 |
the root of the current repository. |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
442 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
443 |
To use an extended glob, start a name with "glob:". Globs are |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
444 |
rooted at the current directory; a glob such as "*.c" will match |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
445 |
files ending in ".c" in the current directory only. |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
446 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
447 |
The supported glob syntax extensions are "**" to match any string |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
448 |
across path separators, and "{a,b}" to mean "a or b". |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
449 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
450 |
To use a Perl/Python regular expression, start a name with "re:". |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
451 |
Regexp pattern matching is anchored at the root of the repository. |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
452 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
453 |
Plain examples: |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
454 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
455 |
path:foo/bar a name bar in a directory named foo in the root of |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
456 |
the repository |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
457 |
path:path:name a file or directory named "path:name" |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
458 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
459 |
Glob examples: |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
460 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
461 |
glob:*.c any name ending in ".c" in the current directory |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
462 |
*.c any name ending in ".c" in the current directory |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
463 |
**.c any name ending in ".c" in the current directory, or |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
464 |
any subdirectory |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
465 |
foo/*.c any name ending in ".c" in the directory foo |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
466 |
foo/**.c any name ending in ".c" in the directory foo, or any |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
467 |
subdirectory |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
468 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
469 |
Regexp examples: |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
470 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
471 |
re:.*\.c$ any name ending in ".c", anywhere in the repsitory |
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
472 |
|
1c0c413cccdd
Get add and locate to use new repo and dirstate walk code.
Bryan O'Sullivan <bos@serpentine.com>
parents:
671
diff
changeset
|
473 |
|
580 | 474 |
SPECIFYING SINGLE REVISIONS |
475 |
--------------------------- |
|
476 |
||
477 |
Mercurial accepts several notations for identifying individual |
|
478 |
revisions. |
|
479 |
||
480 |
A plain integer is treated as a revision number. Negative |
|
481 |
integers are treated as offsets from the tip, with -1 denoting the |
|
482 |
tip. |
|
483 |
||
484 |
A 40-digit hexadecimal string is treated as a unique revision |
|
485 |
identifier. |
|
486 |
||
487 |
A hexadecimal string less than 40 characters long is treated as a |
|
488 |
unique revision identifier, and referred to as a short-form |
|
489 |
identifier. A short-form identifier is only valid if it is the |
|
490 |
prefix of one full-length identifier. |
|
491 |
||
492 |
Any other string is treated as a tag name, which is a symbolic |
|
493 |
name associated with a revision identifier. Tag names may not |
|
494 |
contain the ":" character. |
|
495 |
||
496 |
The reserved name "tip" is a special tag that always identifies |
|
497 |
the most recent revision. |
|
498 |
||
499 |
SPECIFYING MULTIPLE REVISIONS |
|
500 |
----------------------------- |
|
501 |
||
502 |
When Mercurial accepts more than one revision, they may be |
|
503 |
specified individually, or provided as a continuous range, |
|
504 |
separated by the ":" character. |
|
505 |
||
506 |
The syntax of range notation is [BEGIN]:[END], where BEGIN and END |
|
507 |
are revision identifiers. Both BEGIN and END are optional. If |
|
508 |
BEGIN is not specified, it defaults to revision number 0. If END |
|
509 |
is not specified, it defaults to the tip. The range ":" thus |
|
510 |
means "all revisions". |
|
511 |
||
512 |
If BEGIN is greater than END, revisions are treated in reverse |
|
513 |
order. |
|
514 |
||
860
8ccbac05cf59
Use correct term "closed interval" for ranges.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
840
diff
changeset
|
515 |
A range acts as a closed interval. This means that a range of 3:5 |
580 | 516 |
gives 3, 4 and 5. Similarly, a range of 4:2 gives 4, 3, and 2. |
196
48827121af7e
add export, recover, and undo to the man page
jake@edge2.net
parents:
182
diff
changeset
|
517 |
|
177 | 518 |
ENVIRONMENT VARIABLES |
519 |
--------------------- |
|
438 | 520 |
|
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
521 |
HGEDITOR:: |
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
522 |
This is the name of the editor to use when committing. Defaults to the |
608
d2994b5298fb
Add username/merge/editor to .hgrc
Matt Mackall <mpm@selenic.com>
parents:
606
diff
changeset
|
523 |
value of EDITOR. |
d2994b5298fb
Add username/merge/editor to .hgrc
Matt Mackall <mpm@selenic.com>
parents:
606
diff
changeset
|
524 |
|
d2994b5298fb
Add username/merge/editor to .hgrc
Matt Mackall <mpm@selenic.com>
parents:
606
diff
changeset
|
525 |
(deprecated, use .hgrc) |
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
526 |
|
177 | 527 |
HGMERGE:: |
498 | 528 |
An executable to use for resolving merge conflicts. The program |
438 | 529 |
will be executed with three arguments: local file, remote file, |
530 |
ancestor file. |
|
531 |
||
532 |
The default program is "hgmerge", which is a shell script provided |
|
533 |
by Mercurial with some sensible defaults. |
|
177 | 534 |
|
608
d2994b5298fb
Add username/merge/editor to .hgrc
Matt Mackall <mpm@selenic.com>
parents:
606
diff
changeset
|
535 |
(deprecated, use .hgrc) |
d2994b5298fb
Add username/merge/editor to .hgrc
Matt Mackall <mpm@selenic.com>
parents:
606
diff
changeset
|
536 |
|
177 | 537 |
HGUSER:: |
438 | 538 |
This is the string used for the author of a commit. |
177 | 539 |
|
608
d2994b5298fb
Add username/merge/editor to .hgrc
Matt Mackall <mpm@selenic.com>
parents:
606
diff
changeset
|
540 |
(deprecated, use .hgrc) |
d2994b5298fb
Add username/merge/editor to .hgrc
Matt Mackall <mpm@selenic.com>
parents:
606
diff
changeset
|
541 |
|
177 | 542 |
EMAIL:: |
438 | 543 |
If HGUSER is not set, this will be used as the author for a commit. |
177 | 544 |
|
545 |
LOGNAME:: |
|
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
546 |
If neither HGUSER nor EMAIL is set, LOGNAME will be used (with |
438 | 547 |
'@hostname' appended) as the author value for a commit. |
177 | 548 |
|
549 |
EDITOR:: |
|
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
550 |
This is the name of the editor used in the hgmerge script. It will be |
498 | 551 |
used for commit messages if HGEDITOR isn't set. Defaults to 'vi'. |
438 | 552 |
|
553 |
PYTHONPATH:: |
|
554 |
This is used by Python to find imported modules and may need to be set |
|
555 |
appropriately if Mercurial is not installed system-wide. |
|
177 | 556 |
|
557 |
FILES |
|
558 |
----- |
|
559 |
.hgignore:: |
|
438 | 560 |
This file contains regular expressions (one per line) that describe file |
478
f1804f2e7f35
Update of doc/hg.1.txt
Thomas Arendsen Hein <thomas@intevation.de>
parents:
438
diff
changeset
|
561 |
names that should be ignored by hg. |
177 | 562 |
|
563 |
.hgtags:: |
|
438 | 564 |
This file contains changeset hash values and text tag names (one of each |
177 | 565 |
seperated by spaces) that correspond to tagged versions of the repository |
566 |
contents. |
|
567 |
||
438 | 568 |
$HOME/.hgrc, .hg/hgrc:: |
569 |
This file contains defaults and configuration. Values in .hg/hgrc |
|
671
efa4a7e2f322
Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
631
diff
changeset
|
570 |
override those in .hgrc. See hgrc(5) for details of the contents |
efa4a7e2f322
Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
631
diff
changeset
|
571 |
and format of these files. |
321 | 572 |
|
177 | 573 |
BUGS |
574 |
---- |
|
575 |
Probably lots, please post them to the mailing list (See Resources below) |
|
576 |
when you find them. |
|
577 |
||
671
efa4a7e2f322
Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
631
diff
changeset
|
578 |
SEE ALSO |
efa4a7e2f322
Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
631
diff
changeset
|
579 |
-------- |
efa4a7e2f322
Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
631
diff
changeset
|
580 |
hgrc(5) |
efa4a7e2f322
Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
631
diff
changeset
|
581 |
|
177 | 582 |
AUTHOR |
583 |
------ |
|
584 |
Written by Matt Mackall <mpm@selenic.com> |
|
585 |
||
586 |
RESOURCES |
|
587 |
--------- |
|
588 |
http://selenic.com/mercurial[Main Web Site] |
|
589 |
||
671
efa4a7e2f322
Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
631
diff
changeset
|
590 |
http://www.serpentine.com/mercurial[Wiki site] |
efa4a7e2f322
Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
631
diff
changeset
|
591 |
|
177 | 592 |
http://selenic.com/hg[Source code repository] |
593 |
||
594 |
http://selenic.com/mailman/listinfo/mercurial[Mailing list] |
|
595 |
||
596 |
COPYING |
|
597 |
------- |
|
598 |
Copyright (C) 2005 Matt Mackall. |
|
599 |
Free use of this software is granted under the terms of the GNU General |
|
600 |
Public License (GPL). |