Differences between revisions 9 and 10
Revision 9 as of 2008-12-15 19:27:56
Size: 2078
Editor: BrendanCully
Comment:
Revision 10 as of 2009-03-04 06:45:29
Size: 2211
Editor: JensWWulf
Comment: marked inotify as experimental
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:
'''[http://article.gmane.org/gmane.comp.version-control.mercurial.general/12475 It definitely has to be considered experimental]'''

Inotify Extension

Author: Bryan O'Sullivan

This extension has been included with Mercurial since version 1.0 [http://article.gmane.org/gmane.comp.version-control.mercurial.general/12475 It definitely has to be considered experimental]

Overview

This extension uses the Linux 2.6 inotify API to make status instantaneous for even very large repositories, by subscribing to the paths in the repository instead of having to check them all at every status command.

Installation and configuration

To enable it, edit your hgrc:

[extensions]
inotify =

You can either enable it for each individual repository you need it in, or globally.

The extension contains both a server and a client component. By default, it will start automatically. To prevent this, edit either your global ~/.hgrc or .hg/hgrc in repositories where you don't want to use inotify:

[inotify]
autostart = False

Obsolete installation instructions (Mercurial older than 1.0)

These instructions apply to older, out-of-tree versions of the inotify extension.

Installation

The inotify extension requires Bryan's [http://hg.kublai.com/python/inotify python bindings for inotify]. You can either install them the normal way (via setup.py) or do an in-place build setup.py build_ext -i, then create a symlink from the inotify directory into the inotify extension directory. For example:

$ hg clone http://hg.kublai.com/python/inotify python-inotify
$ cd python-inotify
$ python setup.py build_ext -i
$ cd ..
$ hg clone http://hg.kublai.com/mercurial/extensions/inotify
$ cd inotify
$ ln -s ../python-inotify/inotify .

The extension should now be ready to use.

Configuration

Configure your .hgrc to enable the extension by adding following lines:

[extensions]
inotify=/path/to/inotify

You can either start up the inotify extension on a repository with hg inserve or have it autostart with the following .hgrc snippet (either global or in the repository .hg/hgrc in which you would like to use inotify:

[inotify]
autostart = true


CategoryExtension

InotifyExtension (last edited 2014-03-24 01:53:35 by Rain)