Mercurial > hg
changeset 178:b3bf5a0edd69
Merge from Jake's hg docs
author | mpm@selenic.com |
---|---|
date | Fri, 27 May 2005 12:27:46 -0800 |
parents | 1d8e9637a0a4 (current diff) 91055f795d88 (diff) |
children | ff5377a4b203 |
files | README doc/README doc/hg.1 doc/hg.1.html doc/hg.1.txt mercurial/hg.py |
diffstat | 4 files changed, 838 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/README Fri May 27 12:27:46 2005 -0800 @@ -0,0 +1,25 @@ +Files in this directory: + +README - this file +hg.1.txt - asciidoc source for the files +hg.1 - groff man page for hg +hg.1.html - man page in html format + +How to generate the man page and html files + +For now we use asciidoc which is available at: + +http://www.methods.co.nz/asciidoc/ + +the file hg.1.txt is the input file, to generate the man page: + +asciidoc.py -d manpage -b docbook hg.1.txt +xmlto man hg.1.xml + +to display: + +groff -mandoc -Tascii hg.1 | more + +to create the html page (without stylesheets): + +asciidoc.py -b html hg.1.txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/hg.1 Fri May 27 12:27:46 2005 -0800 @@ -0,0 +1,209 @@ +.\"Generated by db2man.xsl. Don't modify this, modify the source. +.de Sh \" Subsection +.br +.if t .Sp +.ne 5 +.PP +\fB\\$1\fR +.PP +.. +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Ip \" List item +.br +.ie \\n(.$>=3 .ne \\$3 +.el .ne 3 +.IP "\\$1" \\$2 +.. +.TH "HG" 1 "" "" "" +.SH NAME +hg \- command line interface to the Mercurial source code management system +.SH "SYNOPSIS" + + +hg [\-v \-d \-q \-y] <command> [command options] [files] + +.SH "DESCRIPTION" + + +The hg(1) command provides a command line interface to the Mercurial system\&. + +.SH "NOTE" + + +Many of the hg commands are not yet subdirectory and/or working directory aware\&. This means that some commands will only work in the top level repository directory or will only accept paths and filenames relative to the top level\&. Merges and commits, in particular, should be done in the top\-level directory\&. + +.SH "OPTIONS" + +.TP +--debug, \-d +enable debugging output + +.TP +--quiet, \-q +suppress output + +.TP +--verbose, \-v +enable additional output + +.TP +--noninteractive, \-y +do not prompt, assume yes for any required answers + +.SH "COMMAND ELEMENTS" + +.TP +files ... +indicates one or more filename or relative path filenames + +.TP +path +indicates a path on the local machine + +.TP +revision +indicates a changeset which can be specified as a changeset id (int), a tag, or a unique substring of the changeset hash value + +.TP +repository path +is either the pathname of a local repository of the URI of a remote repository\&. There are two available URI protocols, hg:// which is fast and the http:// protocol which is much slower but does not require python on the web host\&. + +.SH "COMMANDS" + +.TP +add [files ...] +add the given files to the repository\&. Note that this just schedules the files for addition at the next hg commit time\&. + +.TP +addremove +add all new files and remove all missing files from the repository\&. new files are ignored if they match any of the patterns in \&.hgignore + +.TP +annotate [\-r revision \-u \-n \-c] [files ...] +list the files with each line showing the revision id responsible for that line\&. \-u will add the author to the revision id, \-c will print the changeset hash, and \-n will ... + +.TP +branch <path> +create a new branch of the repository indicated by path in the current directory\&. Note that there should not be a repository already initialized in the current directory + +.TP +checkout [revision] +check out the indicated version of the repository into the working directory\&. Note that currently no merge occurs with changed files in the working dir\&. + +.TP +commit +commit all changed files in the working dir to the repository\&. This uses the EDITOR environment variable to bring up an editor to add a commit comment\&. + +.TP +diff [\-r revision] [\-r revision] [files ...] +generate a unified diff of the indicated files\&. If there are no revisions specified, the working directory file is compared to the tip, one revision specified indicates a comparison between the working directory file and the specified revision, two revisions compares the two versions specified\&. + +.TP +dump <file> [revision] +print the indicated revision of the file + +.TP +dumpmanifest [revision] +print the indicated revision of the manifest (list of version controlled files) + +.TP +history +print the revision history of the repository + +.TP +init +initialize a repository in the current directory + +.TP +log <file> +print the revision history of the specified file + +.TP +merge <repository path> +pull any changes from the specified repository to the repository in the current directory\&. Use the value of the HGMERGE environment variable as a program to resolve any merge conflicts between the two repositories\&. An implicit commit is done at the end of this process if there were any merge conflicts\&. Note that merge does not yet merge with changed files in the working dir\&. + +.TP +remove [files ...] +schedule the indicated files for removal from the repository at the next commit + +.TP +serve [\-a addr \-n name \-p port \-t templatedir] +this will start an http server, by default on port 8000, that will allow browsing the repository using the hgweb interface and will allow merging from the repository\&. \-a sets the interface address, \-p the port to listen on, \-n the name of the repository and \-t sets the location of the template directory\&. + +.TP +status +list new, changed, and missing files in the working directory + +.TP +tags +list the current tags + +.SH "ENVIRONMENT VARIABLES" + +.TP +HGMERGE +points to an executable to use for resolving merge conflicts, the program will be executed with four arguments: local file, remote file, ancestor file, and original filename\&. + +.TP +HGUSER +this is the string used for the author value of a commit + +.TP +HG_OPTS +this string is used for default arguments to hg + +.TP +PYTHONPATH +this is used by Python to find imported modules and needs to be set appropriately based on where mercurial is installed + +.TP +EMAIL +if HGUSER is not set, this will be used next as the author value for a commit + +.TP +LOGNAME +if neither HGUSER nor EMAIL is set, LOGNAME will be used (with @hostname appended) as the author value for a commit + +.TP +EDITOR +this is the name of the editor to use when committing + +.SH "FILES" + +.TP +\&.hgignore +this file contains regular expressions (one per line) that describe file names that should be ignored by hg + +.TP +\&.hgtags +this file contains changeset hash values and text tag names (one of each seperated by spaces) that correspond to tagged versions of the repository contents\&. + +.SH "BUGS" + + +Probably lots, please post them to the mailing list (See Resources below) when you find them\&. + +.SH "AUTHOR" + + +Written by Matt Mackall <mpm@selenic\&.com> + +.SH "RESOURCES" + + +Main Web Site: \fIhttp://selenic.com/mercurial\fR + + +Source code repository: \fIhttp://selenic.com/hg\fR + + +Mailing list: \fIhttp://selenic.com/mailman/listinfo/mercurial\fR + +.SH "COPYING" + + +Copyright (C) 2005 Matt Mackall\&. Free use of this software is granted under the terms of the GNU General Public License (GPL)\&. +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/hg.1.html Fri May 27 12:27:46 2005 -0800 @@ -0,0 +1,407 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> +<meta name="generator" content="AsciiDoc 6.0.3"> +<meta name="author" content="Matt Mackall"> +<meta name="author-email" content="mpm@selenic.com"> +<title>HG(1)</title> +</head> +<body> +<h1>HG(1)</h1> +<p> +<strong>by Matt Mackall</strong><br /> +<tt><<a href="mailto:mpm@selenic.com">mpm@selenic.com</a>></tt><br /> +v0.5, +27 May 2005 +</p> +<hr /> +<h2>NAME</h2> +<p> +hg - command line interface to the Mercurial source code management system +</p> +<hr /> +<h2>SYNOPSIS</h2> +<p> +<em>hg</em> [-v -d -q -y] <command> [command options] [files] +</p> +<hr /> +<h2>DESCRIPTION</h2> +<p> +The hg(1) command provides a command line interface to the Mercurial system. +</p> +<hr /> +<h2>NOTE</h2> +<p> +Many of the hg commands are not yet subdirectory and/or working directory +aware. This means that some commands will only work in the top level +repository directory or will only accept paths and filenames relative to the +top level. Merges and commits, in particular, should be done in the +top-level directory. +</p> +<hr /> +<h2>OPTIONS</h2> +<dl> +<dt> +—debug, -d +</dt> +<dd> + + enable debugging output + +</dd> +<dt> +—quiet, -q +</dt> +<dd> + + suppress output + +</dd> +<dt> +—verbose, -v +</dt> +<dd> + + enable additional output + +</dd> +<dt> +—noninteractive, -y +</dt> +<dd> + + do not prompt, assume <em>yes</em> for any required answers + +</dd> +</dl> +<hr /> +<h2>COMMAND ELEMENTS</h2> +<dl> +<dt> +files … +</dt> +<dd> + + indicates one or more filename or relative path filenames + +</dd> +<dt> +path +</dt> +<dd> + + indicates a path on the local machine + +</dd> +<dt> +revision +</dt> +<dd> + + indicates a changeset which can be specified as a changeset id (int), + a tag, or a unique substring of the changeset hash value + +</dd> +<dt> +repository path +</dt> +<dd> + + is either the pathname of a local repository of the URI of a remote + repository. There are two available URI protocols, hg:// which is + fast and the http:// protocol which is much slower but does not require + python on the web host. + +</dd> +</dl> +<hr /> +<h2>COMMANDS</h2> +<dl> +<dt> +add [files …] +</dt> +<dd> + + add the given files to the repository. Note that this just schedules the + files for addition at the next hg commit time. + +</dd> +<dt> +addremove +</dt> +<dd> + + add all new files and remove all missing files from the repository. new + files are ignored if they match any of the patterns in .hgignore + +</dd> +<dt> +annotate [-r revision -u -n -c] [files …] +</dt> +<dd> + + list the files with each line showing the revision id responsible + for that line. -u will add the author to the revision id, -c will + print the changeset hash, and -n will … + +</dd> +<dt> +branch <path> +</dt> +<dd> + + create a new branch of the repository indicated by path in the current + directory. Note that there should not be a repository already initialized + in the current directory + +</dd> +<dt> +checkout [revision] +</dt> +<dd> + + check out the indicated version of the repository into the working + directory. Note that currently no merge occurs with changed files + in the working dir. + +</dd> +<dt> +commit +</dt> +<dd> + + commit all changed files in the working dir to the repository. This uses + the EDITOR environment variable to bring up an editor to add a commit + comment. + +</dd> +<dt> +diff [-r revision] [-r revision] [files …] +</dt> +<dd> + + generate a unified diff of the indicated files. If there are no + revisions specified, the working directory file is compared to + the tip, one revision specified indicates a comparison between the + working directory file and the specified revision, two revisions + compares the two versions specified. + +</dd> +<dt> +dump <file> [revision] +</dt> +<dd> + + print the indicated revision of the file + +</dd> +<dt> +dumpmanifest [revision] +</dt> +<dd> + + print the indicated revision of the manifest (list of version controlled + files) + +</dd> +<dt> +history +</dt> +<dd> + + print the revision history of the repository + +</dd> +<dt> +init +</dt> +<dd> + + initialize a repository in the current directory + +</dd> +<dt> +log <file> +</dt> +<dd> + + print the revision history of the specified file + +</dd> +<dt> +merge <repository path> +</dt> +<dd> + + pull any changes from the specified repository to the repository in the + current directory. Use the value of the HGMERGE environment variable + as a program to resolve any merge conflicts between the two repositories. + An implicit commit is done at the end of this process if there were any + merge conflicts. Note that merge does not yet merge with changed files + in the working dir. + +</dd> +<dt> +remove [files …] +</dt> +<dd> + + schedule the indicated files for removal from the repository at the next + commit + +</dd> +<dt> +serve [-a addr -n name -p port -t templatedir] +</dt> +<dd> + + this will start an http server, by default on port 8000, that will + allow browsing the repository using the hgweb interface and will allow + merging from the repository. -a sets the interface address, -p the + port to listen on, -n the name of the repository and -t sets the + location of the template directory. + +</dd> +<dt> +status +</dt> +<dd> + + list new, changed, and missing files in the working directory + +</dd> +<dt> +tags +</dt> +<dd> + + list the current tags + +</dd> +</dl> +<hr /> +<h2>ENVIRONMENT VARIABLES</h2> +<dl> +<dt> +HGMERGE +</dt> +<dd> + + points to an executable to use for resolving merge conflicts, the + program will be executed with four arguments: local file, remote + file, ancestor file, and original filename. + +</dd> +<dt> +HGUSER +</dt> +<dd> + + this is the string used for the author value of a commit + +</dd> +<dt> +HG_OPTS +</dt> +<dd> + + this string is used for default arguments to hg + +</dd> +<dt> +PYTHONPATH +</dt> +<dd> + + this is used by Python to find imported modules and needs to be set + appropriately based on where mercurial is installed + +</dd> +<dt> +EMAIL +</dt> +<dd> + + if HGUSER is not set, this will be used next as the author value for + a commit + +</dd> +<dt> +LOGNAME +</dt> +<dd> + + if neither HGUSER nor EMAIL is set, LOGNAME will be used (with + <em>@hostname</em> appended) as the author value for a commit + +</dd> +<dt> +EDITOR +</dt> +<dd> + + this is the name of the editor to use when committing + +</dd> +</dl> +<hr /> +<h2>FILES</h2> +<dl> +<dt> +.hgignore +</dt> +<dd> + + this file contains regular expressions (one per line) that describe file + names that should be ignored by hg + +</dd> +<dt> +.hgtags +</dt> +<dd> + + this file contains changeset hash values and text tag names (one of each + seperated by spaces) that correspond to tagged versions of the repository + contents. + +</dd> +</dl> +<hr /> +<h2>BUGS</h2> +<p> +Probably lots, please post them to the mailing list (See Resources below) +when you find them. +</p> +<hr /> +<h2>AUTHOR</h2> +<p> +Written by Matt Mackall <mpm@selenic.com> +</p> +<hr /> +<h2>RESOURCES</h2> +<p> +<a href="http://selenic.com/mercurial">Main Web Site</a> +</p> +<p> +<a href="http://selenic.com/hg">Source code repository</a> +</p> +<p> +<a href="http://selenic.com/mailman/listinfo/mercurial">Mailing list</a> +</p> +<hr /> +<h2>COPYING</h2> +<p> +Copyright © 2005 Matt Mackall. +Free use of this software is granted under the terms of the GNU General +Public License (GPL). +</p> +<p></p> +<p></p> +<hr /><p><small> +Version 0.5<br /> +Last updated 27-May-2005 08:14:25 MDT +</small></p> +</body> +</html>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/hg.1.txt Fri May 27 12:27:46 2005 -0800 @@ -0,0 +1,197 @@ +HG(1) +===== +Matt Mackall <mpm@selenic.com> +v0.5, 27 May 2005 + +NAME +---- +hg - command line interface to the Mercurial source code management system + +SYNOPSIS +-------- +'hg' [-v -d -q -y] <command> [command options] [files] + +DESCRIPTION +----------- +The hg(1) command provides a command line interface to the Mercurial system. + +NOTE +---- +Many of the hg commands are not yet subdirectory and/or working directory +aware. This means that some commands will only work in the top level +repository directory or will only accept paths and filenames relative to the +top level. Merges and commits, in particular, should be done in the +top-level directory. + +OPTIONS +------- +--debug, -d:: + enable debugging output + +--quiet, -q:: + suppress output + +--verbose, -v:: + enable additional output + +--noninteractive, -y:: + do not prompt, assume 'yes' for any required answers + +COMMAND ELEMENTS +---------------- + +files ...:: + indicates one or more filename or relative path filenames + +path:: + indicates a path on the local machine + +revision:: + indicates a changeset which can be specified as a changeset id (int), + a tag, or a unique substring of the changeset hash value + +repository path:: + is either the pathname of a local repository of the URI of a remote + repository. There are two available URI protocols, hg:// which is + fast and the http:// protocol which is much slower but does not require + python on the web host. + +COMMANDS +-------- +add [files ...]:: + add the given files to the repository. Note that this just schedules the + files for addition at the next hg commit time. + +addremove:: + add all new files and remove all missing files from the repository. new + files are ignored if they match any of the patterns in .hgignore + +annotate [-r revision -u -n -c] [files ...]:: + list the files with each line showing the revision id responsible + for that line. -u will add the author to the revision id, -c will + print the changeset hash, and -n will ... + +branch <path>:: + create a new branch of the repository indicated by path in the current + directory. Note that there should not be a repository already initialized + in the current directory + +checkout [revision]:: + check out the indicated version of the repository into the working + directory. Note that currently no merge occurs with changed files + in the working dir. + +commit:: + commit all changed files in the working dir to the repository. This uses + the EDITOR environment variable to bring up an editor to add a commit + comment. + +diff [-r revision] [-r revision] [files ...]:: + generate a unified diff of the indicated files. If there are no + revisions specified, the working directory file is compared to + the tip, one revision specified indicates a comparison between the + working directory file and the specified revision, two revisions + compares the two versions specified. + +dump <file> [revision]:: + print the indicated revision of the file + +dumpmanifest [revision]:: + print the indicated revision of the manifest (list of version controlled + files) + +history:: + print the revision history of the repository + +init:: + initialize a repository in the current directory + +log <file>:: + print the revision history of the specified file + +merge <repository path>:: + pull any changes from the specified repository to the repository in the + current directory. Use the value of the HGMERGE environment variable + as a program to resolve any merge conflicts between the two repositories. + An implicit commit is done at the end of this process if there were any + merge conflicts. Note that merge does not yet merge with changed files + in the working dir. + +remove [files ...]:: + schedule the indicated files for removal from the repository at the next + commit + +serve [-a addr -n name -p port -t templatedir]:: + this will start an http server, by default on port 8000, that will + allow browsing the repository using the hgweb interface and will allow + merging from the repository. -a sets the interface address, -p the + port to listen on, -n the name of the repository and -t sets the + location of the template directory. + +status:: + list new, changed, and missing files in the working directory + +tags:: + list the current tags + +ENVIRONMENT VARIABLES +--------------------- +HGMERGE:: + points to an executable to use for resolving merge conflicts, the + program will be executed with four arguments: local file, remote + file, ancestor file, and original filename. + +HGUSER:: + this is the string used for the author value of a commit + +HG_OPTS:: + this string is used for default arguments to hg + +PYTHONPATH:: + this is used by Python to find imported modules and needs to be set + appropriately based on where mercurial is installed + +EMAIL:: + if HGUSER is not set, this will be used next as the author value for + a commit + +LOGNAME:: + if neither HGUSER nor EMAIL is set, LOGNAME will be used (with + '@hostname' appended) as the author value for a commit + +EDITOR:: + this is the name of the editor to use when committing + +FILES +----- + .hgignore:: + this file contains regular expressions (one per line) that describe file + names that should be ignored by hg + + .hgtags:: + this file contains changeset hash values and text tag names (one of each + seperated by spaces) that correspond to tagged versions of the repository + contents. + +BUGS +---- +Probably lots, please post them to the mailing list (See Resources below) +when you find them. + +AUTHOR +------ +Written by Matt Mackall <mpm@selenic.com> + +RESOURCES +--------- +http://selenic.com/mercurial[Main Web Site] + +http://selenic.com/hg[Source code repository] + +http://selenic.com/mailman/listinfo/mercurial[Mailing list] + +COPYING +------- +Copyright (C) 2005 Matt Mackall. +Free use of this software is granted under the terms of the GNU General +Public License (GPL).