A Scalable, User-Friendly Source Control System.
Go to file
FUJIWARA Katsunori 38ee15a9e6 dirstate: centralize _cwd handling into _cwd method
Before this patch, immediate value is assigned to dirstate._cwd, if
ui.forcecwd is specified at instantiation of dirstate.

But this doesn't work as expected in some cases.

For example, hgweb set ui.forcecwd after instantiation of repo object.
If an extension touches repo.dirstate in its reposetup(), dirstate is
instantiated without setting ui.forcecwd, and dirstate.getcwd()
returns incorrect result.

In addition to it, hgweb.__init__() can take already instantiated repo
object, too. In this case, repo.dirstate might be already
instantiated, even if all enabled extensions don't so in their own
reposetup().

To avoid such issue, this patch centralizes _cwd handling into _cwd
method.

This issue can be reproduced by running test-hgweb-commands.t with
fsmonitor-run-tests.py.
2017-07-03 02:52:40 +09:00
contrib phabricator: add phabread command to read patches 2017-07-02 20:08:09 -07:00
doc doc: port check-seclevel.py to be Python 2/3 portable 2017-05-28 15:51:26 -04:00
hgdemandimport demandimport: look for 'mod' suffix as alternative name for module reference 2017-04-28 23:46:16 +09:00
hgext show: document why accidentally quadratic is (probably) acceptable 2017-07-03 21:26:39 -07:00
hgext3rd extensions: also search for extension in the 'hgext3rd' package 2016-03-11 10:30:08 +00:00
i18n i18n: drop a py25 conditional 2017-06-16 20:55:34 -04:00
mercurial dirstate: centralize _cwd handling into _cwd method 2017-07-03 02:52:40 +09:00
tests tests: add line specific for testing with fsmonitor 2017-07-03 02:52:39 +09:00
.editorconfig mercurial: add editorconfig 2016-04-05 18:10:33 +01:00
.hgignore merge with stable 2017-06-24 15:50:13 -04:00
.hgsigs Added signature for changeset 28e02e510eac 2017-06-04 08:16:37 -05:00
CONTRIBUTING contributing: add new file with a pointer to the wiki 2016-10-08 10:39:00 -04: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 init: turn on demandimport for Python 3.6 and above 2017-05-21 12:51:01 -07: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 merge with stable 2017-06-24 15:50:13 -04:00
README urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
setup.py setup: fix runcmd() usage on darwin 2017-06-28 10:50:37 -07: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.