A Scalable, User-Friendly Source Control System.
Go to file
FUJIWARA Katsunori 6cb3588722 censor: make censor acquire locks before processing
Before this patch, "hg censor" executes below:

  - without acquisition of wlock, examine whether the working
    directory refers the revision of the file to be censored or not

  - without acquisition of store lock (slock), replace existing
    filelog of file to be censored with censored one,

    Replacement consists of steps below, and it is assumed that the
    destination filelog at (1) isn't changed before renaming at (3).

    1. read existing filelog in
    2. write filelog entries (both censored and not) into temporary file
    3. rename from temporary file to existing filelog to be censored

It may cause unintentional result, if another command runs parallelly
(see also issue4368).

This patch makes "hg censor" acquire wlock and slock before
processing.
2015-12-09 08:28:53 +09:00
contrib tests: add test for Python 3 compatibility 2015-12-06 22:39:12 -08:00
doc check-seclevel: set module load policy to Python only 2015-11-24 22:53:55 -08:00
hgext censor: make censor acquire locks before processing 2015-12-09 08:28:53 +09:00
i18n i18n: make sure to include translation of (DEPRECATED) 2015-11-03 22:44:57 +09:00
mercurial merge with stable 2015-12-07 18:06:13 -06:00
tests tests/filterpyflakes: use absolute_import 2015-12-06 22:22:09 -08:00
.hgignore hgignore: ignore the PyCharm workspace folder 2014-10-13 11:46:04 +02:00
.hgsigs Added signature for changeset 86c16f25367c 2015-12-01 20:18:28 -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 hg: add support for HGUNICODEPEDANTRY environment variable 2014-06-23 09:33:07 -04:00
hgeditor spelling: trivial spell checking 2015-10-17 00:58:46 +02:00
hgweb.cgi urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
Makefile builddeb: read default distribution and codename from lsb_release 2015-11-25 18:07:33 +08:00
README urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
setup.py setup.py: don't rewrite @LIBDIR@ when creating wheels 2015-12-05 17:52:50 -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 https://mercurial-scm.org/ for detailed installation
instructions, platform-specific notes, and Mercurial user information.