A Scalable, User-Friendly Source Control System.
Go to file
Peter Arrenbrecht 75fa0e5ea9 discovery: add new set-based discovery
Adds a new discovery method based on repeatedly sampling the still
undecided subset of the local node graph to determine the set of nodes
common to both the client and the server.

For small differences between client and server, it uses about the same
or slightly fewer roundtrips than the old tree-based discovery. For
larger differences, it typically reduces the number of roundtrips
drastically (from 150 to 4, for instance).

The old discovery code now lives in treediscovery.py, the new code is
in setdiscovery.py.

Still missing is a hook for extensions to contribute nodes to the
initial sample. For instance, Augie's remotebranches could contribute
the last known state of the server's heads.

Credits for the actual sampler and computing common heads instead of
bases go to Benoit Boissinot.
2011-05-02 19:21:30 +02:00
contrib win32: remove obsolete bookmarks and parentrevspec extensions from mercurial.ini 2011-05-01 20:29:44 +02:00
doc hgrc.5: mention new 'case collision' handling for ui.portablefilenames 2011-05-02 00:04:49 +02:00
hgext bundlerepo: fix and improve getremotechanges 2011-05-02 12:36:23 +02:00
i18n merge with stable 2011-05-01 06:06:59 -05:00
mercurial discovery: add new set-based discovery 2011-05-02 19:21:30 +02:00
tests discovery: add new set-based discovery 2011-05-02 19:21:30 +02:00
.hgignore hgignore: ignore dll files generated under cygwin 2011-03-14 12:42:05 -04:00
.hgsigs Added signature for changeset b4c87295fc30 2011-05-01 05:58:04 -05:00
CONTRIBUTORS Add note to CONTRIBUTORS file 2007-11-07 21:10:30 -06:00
COPYING Add COPYING 2005-06-17 09:32:13 -08:00
hg setup/hg: handle hg being a symlink when appending relative libdir to sys.path 2010-10-21 09:58:22 -07:00
hgeditor Fixed a bashism with the use of $RANDOM in hgeditor. 2010-05-19 18:06:35 +02:00
hgweb.cgi *: add executable bit to a few files that were missing it. 2010-10-26 12:18:37 +02:00
Makefile build: don't delete precious version information on 'make clean' 2010-12-08 11:18:26 -06:00
README README: add small introduction 2010-10-27 12:05:37 +02:00
setup.py util: add Mac-specific check whether we're in a GUI session (issue2553) 2011-03-23 09:43:34 +01:00

Mercurial
=========

Mercurial is a fast, easy to use, distributed revision control tool
for software developers.

Basic install:

 $ make            # see install targets
 $ make install    # do a system-wide install
 $ hg debuginstall # sanity-check setup
 $ hg              # see help

See http://mercurial.selenic.com/ for detailed installation
instructions, platform-specific notes, and Mercurial user information.