Mercurial の概要

Mercurial is a distributed source control management tool similar to Git and Bazaar. Mercurial is written in Python and is used by projects such as Mozilla for Firefox and Thunderbird.

本パッケージは LFS-11.1 において正しくビルドでき動作することが確認されています。


  • ダウンロード (HTTP):

  • ダウンロード MD5 sum: 5a8ad70fbe894cbf775afbc85e383bce

  • ダウンロードサイズ: 7.8 MB

  • 必要ディスク容量: 106 MB (with docs, add 1.6 GB for tests)

  • 概算ビルド時間: 0.4 SBU (with docs, add 20 SBU for tests using -j4)

Mercurial の依存パッケージ


docutils-0.17.1 (required to build the documentation), git-2.33.1, GPGME-1.16.0 (with Python bindings), OpenSSH-8.8p1 (runtime, to access ssh://... repositories), Pygments-2.10.0, rustc-1.52.0, Subversion-1.14.1 (with Python bindings), Bazaar, CVS, pyflakes, pyOpenSSL, re2


Mercurial のインストール

First, force the build system to use Python 3:

export PYTHON=python3

以下のコマンドを実行して Mercurial をビルドします。

make build

ドキュメントをビルドする場合 (docutils-0.17.1 が必要)、以下を実行します。

make doc

ビルド結果をテストする場合は、以下を実行します (15 個のテストが失敗します)。

TESTFLAGS="-j<N> --tmpdir tmp --blacklist blacklists/fsmonitor --blacklist blacklists/linux-vfat" make check

where <N> is an integer between one and the number of ( processor X threads ), inclusive. In order to investigate any apparently failing tests, you may use the script. To see the almost forty switches, some of them very useful, issue tests/ --help. Running the following commands, you will execute only the tests that failed before:

pushd tests  &&
  rm -rf tmp &&
  ./ --tmpdir tmp test-gpg.t

Normally, the previous failures will be confirmed. However, if you add the switch --debug before --tmpdir, and run again, some failures are gone, which seems to be a problem with the test suite. If this happens, normally, from now on, there will be no more such failures whether you use the debug switch or not. Two tests, and test-removeemptydirs.t, are known to fail.

An interesting switch is --time, which will generate at the end of the test suite execution, a table with all executed tests and respective start, end, user, system and real times. Note that the switches may be used with make check by including them in the TESTFLAGS environment variable.

Install Mercurial by running the following command (as root):

make PREFIX=/usr install-bin

ドキュメントをビルドした場合 (root ユーザーになり) 以下のコマンドを実行してドキュメントをインストールします。

make PREFIX=/usr install-doc

Next, clean up the environment variable set earlier:

unset PYTHON

After installation, two very quick and simple tests should run correctly. The first one needs some configuration:

cat >> ~/.hgrc << "EOF"
username = <user_name> <user@mail>

where you must replace <user_name> and <your@mail> (mail is optional and can be omitted). With the user identity defined, run hg debuginstall and several lines will be displayed, the last one reading "no problems detected". Another quick and simple test is just hg, which should output basic commands that can be used with hg.

Configuring Mercurial

Config Files

/etc/mercurial/hgrc and ~/.hgrc

The great majority of extensions are disabled by default. Run hg help extensions if you need to enable any, e.g. when investigating test failures. You will obtain the lists of enabled and disabled extensions, and more information, such as how to enable or disable them using configuration files.

If you have installed make-ca-1.9 and want Mercurial to use the certificates, as the root user, issue:

install -v -d -m755 /etc/mercurial &&
cat > /etc/mercurial/hgrc << "EOF"
cacerts = /etc/pki/tls/certs/ca-bundle.crt


インストールプログラム: hg
インストールライブラリ: /usr/lib/python3.10/site-packages/mercurial 配下にある内部モジュールが数種類。
インストールディレクトリ: /etc/mercurial, /usr/lib/python3.10/site-packages/{hgdemandimport,hgext,hgext3rd,mercurial}



is the mercurial version control system