mercurial/help/extensions.txt
author Mads Kiilerich <mads@kiilerich.com>
Tue, 22 Nov 2011 01:37:26 +0100
changeset 15547 7f1d263a1bcb
parent 12083 ebfc46929f3e
child 19296 da16d21cf4ed
permissions -rw-r--r--
tests: test-patchbomb.t cleanup Let commit messages and file names describe the facts without making incorrect guess of the actual handling of it.

Mercurial has the ability to add new features through the use of
extensions. Extensions may add new commands, add options to
existing commands, change the default behavior of commands, or
implement hooks.

Extensions are not loaded by default for a variety of reasons:
they can increase startup overhead; they may be meant for advanced
usage only; they may provide potentially dangerous abilities (such
as letting you destroy or modify history); they might not be ready
for prime time; or they may alter some usual behaviors of stock
Mercurial. It is thus up to the user to activate extensions as
needed.

To enable the "foo" extension, either shipped with Mercurial or in the
Python search path, create an entry for it in your configuration file,
like this::

  [extensions]
  foo =

You may also specify the full path to an extension::

  [extensions]
  myfeature = ~/.hgext/myfeature.py

To explicitly disable an extension enabled in a configuration file of
broader scope, prepend its path with !::

  [extensions]
  # disabling extension bar residing in /path/to/extension/bar.py
  bar = !/path/to/extension/bar.py
  # ditto, but no path was supplied for extension baz
  baz = !