Textauth provides extension functionality for the distributed version control
system, Mercurial, to control authentication using a text-based file with
username and password information. It also provides management functionality
for handling the authentication file by invoking the file directly from the
command line using the Python interpreter.
Caution: The extension uses HTTP basic authentication in which credentials are
passed in base64-encoded cleartext across the wire. You /will/ be leaking
username/password information if you are not using SSL/TLS (HTTPS).
Textauth requires Mercurial version 1.5 or newer.
In order to use the extension from Mercurial you must register it in the
"[extensions]" part of the configuration file, e.g. by writing:
textauth = /path/to/textauth.py
To see how to specify the authentication file and further details, please run
`hg help textauth`.
For further details on using extensions, please see the relevant webpage on
the Mercurial website: http://mercurial.selenic.com/wiki/UsingExtensions
This extension is primarily intended for being useful when not running
Mercurial behind a web server that handles authentication, e.g. when running
The first step is to modify your repository's hgrc file (or possibly
hgweb.config file if serving with hgwebdir) and add the ``textauth.file``.
The second step is to run `hg authedit` and get usage information to see
how it is used to create/modify the authentication file.
Finally, you can run `hg serve` as normal, and credentials will automatically
be requested when browsing the repository using the web browser, as well as
doing clone, pull, push, incoming, and outgoing.
Note: It is also possible to use this extension in place of setting up web
server authentication, but it is probably a good deal more efficient to let
the web server handle it.