A Scalable, User-Friendly Source Control System.
Go to file
Pierre-Yves David 01b68ae973 branchmap: allow to use cache of subset
Filtered repository are *subset* of unfiltered repository. This means that a
filtered branchmap could be use to compute the unfiltered version.

And filtered version happen to be subset of each other:
- "all() - unserved()" is a subset of "all() - hidden()"
- "all() - hidden()" is a subset of "all()"

This means that branchmap with "unfiltered" filter can be used as a base for
"hidden" branchmap that itself could be used as a base for unfiltered
branchmap.

   unserved < hidden < None

This changeset implements this mechanism. If the on disk branchcache is not valid
we use the branchcache of the nearest subset as base instead of computing it from
scratch. Such fallback can be cascaded multiple time is necessary.

Note that both "hidden" and "unserved" set are a bit volatile. We will add more
stable filtering in next changesets.

This changeset enables collaboration between no filtering and "unserved"
filtering. Fixing performance regression introduced by 7bff5f37cb97
2013-01-07 17:23:25 +01:00
contrib check-code: disallow defunct <> operator 2013-01-01 13:05:22 -06:00
doc check-code: there must also be whitespace between ')' and operator 2012-12-09 23:33:16 +01:00
hgext mq: drop _cacheabletip usage 2012-12-28 03:42:21 +01:00
i18n merge i18n heads 2013-01-02 00:02:22 -06:00
mercurial branchmap: allow to use cache of subset 2013-01-07 17:23:25 +01:00
tests branchmap: allow to use cache of subset 2013-01-07 17:23:25 +01:00
.hgignore exewrapper: adapt for legacy HackableMercurial 2012-08-07 11:04:41 +02:00
.hgsigs Added signature for changeset 9d7e53f4560e 2013-01-02 00:07:43 -06:00
CONTRIBUTORS Add note to CONTRIBUTORS file 2007-11-07 21:10:30 -06:00
COPYING COPYING: refresh with current address from fsf.org 2011-06-02 11:17:02 -05:00
hg rename util.set_binary to setbinary 2011-05-06 15:25:35 +02:00
hgeditor Fixed a bashism with the use of $RANDOM in hgeditor. 2010-05-19 18:06:35 +02:00
hgweb.cgi mq: add a warning about uncommitted changes for qfinish 2011-11-10 15:40:34 -06:00
Makefile makefile: allow local builds to work on windows/mingw32 2012-12-11 13:44:00 -08:00
README readme: mention how to run in-place 2012-03-02 21:43:55 +02:00
setup.py setup: print subprocess stderr if there is any 2012-11-13 09:55:26 -08: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

Running without installing:

 $ make local      # build for inplace usage
 $ ./hg --version  # should show the latest version

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