bundlespec Bundle File Formats
color Colorizing Outputs
config Configuration Files
dates Date Formats
deprecated Deprecated Features
diffs Diff Formats
environment Environment Variables
extensions Using Additional Features
filesets Specifying File Sets
flags Command-line flags
glossary Glossary
hgignore Syntax for Mercurial Ignore Files
hgweb Configuring hgweb
internals Technical implementation topics
merge-tools Merge Tools
pager Pager Support
patterns File Name Patterns
phases Working with Phases
revisions Specifying Revisions
scripting Using Mercurial from scripts and automation
subrepos Subrepositories
templating Template Usage
urls URL Paths

Main Commands

add add the specified files on the next commit
annotate show changeset information by line for each file
clone make a copy of an existing repository
commit commit the specified files or all outstanding changes
diff diff repository (or selected files)
export dump the header and diffs for one or more changesets
forget forget the specified files on the next commit
init create a new repository in the given directory
log show revision history of entire repository or files
merge merge another revision into working directory
pull pull changes from the specified source
push push changes to the specified destination
qdiff diff of the current patch and subsequent modifications
qnew create a new patch
qpop pop the current patch off the stack
qpush push the next patch onto the stack
qrefresh update the current patch
remove remove the specified files on the next commit
serve start stand-alone webserver
status show changed files in the working directory
summary summarize working directory state
update update working directory (or switch revisions)

Other Commands

addremove add all new files, delete all missing files
archive create an unversioned archive of a repository revision
backout reverse effect of earlier changeset
bisect subdivision search of changesets
bookmarks create a new bookmark or list existing bookmarks
branch set or show the current branch name
branches list repository named branches
bundle create a bundle file
cat output the current or given revision of files
config show combined config settings from all hgrc files
convert convert a foreign SCM repository to a Mercurial one.
copy mark files as copied for the next commit
email send changesets by email
fetch pull changes from a remote repository, merge new changes if needed.
files list tracked files
glog show revision history alongside an ASCII revision graph
graft copy changes from other branches onto the current branch
grep search revision history for a pattern in specified files
heads show branch heads
help show help for a given topic or a help overview
identify identify the working directory or specified revision
import import an ordered set of patches
incoming show new changesets found in source
lfconvert convert a normal repository to a largefiles repository
lfpull pull largefiles for the specified revisions from the specified source
manifest output the current or given revision of the project manifest
outgoing show changesets not found in the destination
paths show aliases for remote repositories
phase set or show the current phase name
purge removes files not tracked by Mercurial
qapplied print the patches already applied
qclone clone main and patch repository at same time
qdelete remove patches from queue
qfinish move applied patches into repository history
qfold fold the named patches into the current patch
qgoto push or pop patches until named patch is at top of stack
qguard set or print guards for a patch
qheader print the header of the topmost or specified patch
qimport import a patch or existing changeset
qnext print the name of the next pushable patch
qprev print the name of the preceding applied patch
qqueue manage multiple patch queues
qrecord interactively record a new patch
qrename rename a patch
qselect set or print guarded patches to push
qseries print the entire series file
qtop print the name of the current patch
qunapplied print the patches not yet applied
rebase move changeset (and descendants) to a different branch
record interactively select changes to commit
recover roll back an interrupted transaction
rename rename files; equivalent of copy + remove
resolve redo merges or set/view the merge status of files
revert restore files to their checkout state
root print the root (top) of the current working directory
strip strip changesets and all their descendants from the repository
tag add one or more tags for the current or given revision
tags list repository tags
transplant transplant changesets from another branch
unbundle apply one or more bundle files
verify verify the integrity of the repository
version output version and copyright information