aboutsummaryrefslogtreecommitdiff
path: root/doc/rcs/mercurial.mdwn
blob: ebfc352025d6e4c46e1dc4020faf512be6b4ce27 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[Mercurial](http://selenic.com/mercurial) is a distributed revison control
system developed by Matt Mackall. Ikiwiki supports storing a wiki in a
mercurial repository.

Ikiwiki can run as a `post-commit` and/or `incoming` hook to update a wiki whenever commits or remote pushes
come in. When running as a [[cgi]] with Mercurial, ikiwiki automatically
commits edited pages, and uses the Mercurial history to generate the
[[RecentChanges]] page.

Example for a `.hg/hgrc` file in `$SRCDIR`:

    [hooks]
    post-commit = ikiwiki --setup /path/to/ikiwiki.setup --post-commit
    incoming = ikiwiki --setup /path/to/ikiwiki.setup --post-commit

Do not use `commit` or `precommit` hooks or ikiwiki will run into a dead lock when committing in `$SRCDIR`. Also note that `--post-commit` and not `--refresh` must be used to avoid dead locking when editing the pages via CGI interface.

See also [[todo/mercurial|todo/mercurial]]