Size: 4450
Comment: add entry for graphviz extension
|
Size: 4450
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 48: | Line 48: |
|| '''Qct''' || QctExtension || provide access to the Qct commit tool || | || '''qct''' || QctExtension || provide access to the Qct commit tool || |
Using Mercurial extensions
Mercurial features an extension mechanism for adding new commands.
Extensions allow the creation of new features and using them directly from the main hg command line as if they were builtin commands.
1. Finding existing extensions
1.1. Extensions Bundled with Mercurial
1.1.1. Core extensions
Name |
Page |
Description |
acl |
Manage commit access to parts of a repo using control lists |
|
bisect |
Quickly find the revision that introduces a bug or feature bisecting the history tree (O(log(n)) |
|
bugzilla |
Update Bugzilla entries when a bug id is referenced in a changeset |
|
convert |
Convert repositories from other SCMs into Mercurial |
|
extdiff |
Compare changes using external programs |
|
fetch |
Conveniently pull, merge and update in one step |
|
gpg |
Sign changesets and check signatures using GPG |
|
graphlog |
Show revision history alongside an ASCII revision graph |
|
hgk |
Graphical repository and history browser based on gitk |
|
mq |
Mercurial Patch Queues - manage changes as series of patches |
|
notify |
Send email to subscribed addresses to notify repository changes |
|
patchbomb |
Send a collection of changesets as a series of patch emails |
|
record |
Select working directory changes to commit by hunk à la darcs record |
|
transplant |
Cherry-picking, rebasing and changeset rewriting |
|
win32text |
Manage line ending conversion for Windows repositories |
1.1.2. Additional extensions
Name |
Page |
Description |
churn |
Show change statistics for mercurial operations per author |
|
purge |
Purge all files and dirs in the repository that are not being tracked by Mercurial |
1.2. Extensions provided by others
Name |
Page |
Description |
alias |
user-defined command aliases |
|
digest |
Create and use small digest files for outgoing/bundle |
|
diffstat |
Shortcut commands for displaying diffstat |
|
forest |
Manage a bunch of mercurial repos as a meta repository, with snapshot support [http://www.selenic.com/pipermail/mercurial/2006-July/009336.html thread] |
|
hgcia |
Send notifications to [http://cia.navi.cx CIA] |
|
imerge |
Perform interactive, interruptible merges |
|
inotify |
Use linux 2.6 inotify API for instantaneous status updates |
|
keyword expansion |
use CVS like keyword expansion in tracked files |
|
parentrevspec |
use foo^ to refer to the parent of revision foo |
|
send |
Automatic send of bundle containing changesets missing on remote, like darcs send |
|
qct |
provide access to the Qct commit tool |
|
graphviz |
generate DOT language source to visualize changeset tree |
2. Enabling an extension
To load an extension, you add it to the "extensions" section of your [http://www.selenic.com/mercurial/hgrc.5.html .hgrc] file.
Mercurial will scan the default python library path for a file named hgk.py if you set hgk empty:
[extensions] hgk=
Extensions are usually located in the hgext directory, and that is the recommended directory to place them. In this case you can load them like:
[extensions] hgext.hgk=
You can also specify an absolute path:
[extensions] hgk=/usr/local/lib/hgk.py
Extensions can often be configured further in an extension specific section in the same configuration file.
See CategoryExtension for a more complete list and WritingExtensions for more information about the installation and writing of new extensions.