「入門TortoiseHg+Mercurial」発売中(詳細は「執筆情報」参照)


Mercurial の利用

重要: Mercurial の 1.x ⇒ 2.0 では、 コンセプト/操作性/互換性等における大きな改変はありません。 あくまで通常の定例アップデートに過ぎませんので、 従来の版を元に書かれている情報の多くは、そのまま適用可能です。

備考: 基本機能を使用する上での各版における問題 (特に日本語併用時の問題) に関しては、 判明している範囲で随時 『「妥当」な Mercurial バージョンの情報』 を更新しています。

はじめに

ノート PC での移動中作業が多くて 「オフラインでコミット/ブランチ作成/履歴参照/差分参照できない」 ことに不便を感じていたり、 「システム構成例」 に示すような構成管理の仕組みを必要とした経験がある場合、 分散リポジトリ形式を用いる Mercurial は、 試してみる価値のあるソフトウェア構成管理 (SCM: Software Configuration Management) ツールと言えます。

しかし、 CVS などを常用して SCM ツールの原理/概念を理解している人でも、 意外に「分散リポジトリ」という考え方がピンとこない場合が有るようです。

通常の開発ツールであれば、 自分の作業効率の向上をもって良しとしても構わないのですが、 折角の分散リポジトリ型 SCM ツールを一人で使っていたのでは、 宝の持ち腐れです。

そこで、 構成管理のモデルや分散されたリポジトリ間での更新伝播といった、 Mercurial における基本的な概念に関してまとめたものを追加した上で、 これまでに私の書いた Mercurial (hg コマンド) に関する情報を再構成しました。

Mercurial 導入の際の一助になれば幸いです。

また、本サイト以外の情報源に関しては、 ページ末尾の「関連リンク」を参照してください。

目次

表題 概要
インストール Mercurial のインストールに関してまとめてみました。
文字コード 日本語利用における文字コードの扱いに関してまとめてみました。
マージプログラム マージプログラムの指定に関してまとめてみました。
設定ファイル記述 初期導入時に必要と思われる設定ファイル記述に関してまとめてみました。
言語設定 日本語翻訳されたメッセージやヘルプを表示するための設定に関してまとめてみました。
ローカルリポジトリ Mercurial が構成変更をどのようなモデルで管理しているかを説明します。
リモートリポジトリ 分散された複数のリポジトリ間で Mercurial がどのように構成変更を伝播/共有するのかを説明します。
システム構成例 CVS のような集中リポジトリ型の SCM では難しい (あるいは運用が面倒な)構成管理のシステム構成例を示します。
Emacs からの利用 hg モード (mercurial.el) に関する情報をまとめてみました。
TortoiseHg からの利用 TortoiseHg に関する情報をまとめてみました。
extension extension 開発/利用に関する個人的な覚え書きをまとめてみました。
コードウォーキングのための準備運動 Mercurial のソースコードを参照する際に必要となる、 基本的な知識に関してまとめてみました。
執筆情報 本サイト以外での Mercurial に関する私の執筆活動等をまとめてみました。

印刷利用物

以下、 印刷して使用することを想定して作成したものです。

改変/流用はご自由に行って頂いて結構ですが、 使用している各種ロゴマーク等の使用ルールには従ってください ("New Mercurial logo design" および "The Python Logo" 参照)。

宣伝等を伴わない単純使用であれば、 ライセンス上の問題は無い筈です。

表題 概要
最小リファレンスカード

Mercurial で構成管理を始める際に、 最初に憶えておく必要のある 『最小限のコマンド/操作』をまとめたリファレンスカード。

コマンドライン版TortoiseHg 版(共に PDF 形式)があります。

(1) どちらか一方を、 名刺大カードに切り分けられる用紙の両面に印刷したり、 (2) 見開き形式の用紙の表裏にそれぞれの版を印刷したりする使い方を想定しています。

イベント用ネームプレート

イベント等で、 参加者の名前等を記入して座席に置いておくネームプレート。

記載されている手順に従って折ったり切ったりすることで、 基本的には道具無しでも組み立て可能です。

Mercurial 系イベント版 (PDF 形式) と、 Python 系イベントとの合同開催版 (PDF 形式 / SVG 形式) があります。

イベント発表資料

以下、各種イベントにおいて、発表させて頂いた際に使用した、 スライド等の発表資料へのリンクです。

表題 概要
ビギナー向け Mercurial ハンズオン演習資料

TokyoMercurial 5.5 として開催された ビギナー向け Mercurial ハンズオンでの演習資料。

TortoiseHg 利用者向けと、 コマンドライン利用者向けの2種類。

世代差で見る
履歴管理ツール入門

2012/07/21 に開催された「SCMBootCamp in Tokyo 3」における発表資料。

主催は kyon_mm 氏。

『分散リポジトリ型』時代の
ソフトウェア構成管理

2011/11/19 に開催された「SCMBootCamp in Tokyo 2」における発表資料。

主催は kyon_mm 氏。

How to write extension
for Mercurial

2009/03/12 に開催された 「第1回 Mercurial 勉強会」 における発表資料。

主催は Voluntas 氏。

関連リンク

Mecurial

Mercurial の総本家サイト。

主に英語で書かれていますが、 有志による翻訳も進んでおり、 日本語トップページもあります。

日本語チュートリアルや、 図解つき解説の日本語版へも、 日本語トップページからのアクセスが便利でしょう。

Mercurial: The Definitive Guide

Mercurial 開発の主要メンバーである Bryan O'Sullivan 氏による Mercurial の解説ドキュメントです。

日本語翻訳版の情報に関しては、執筆情報を参照してください。

Mercurial 日本語コミュニティ

Mercurial についての情報交換を、 気軽に日本語で行うためのコミュニティです。

過去のディスカッションやドキュメントの参照は誰でも可能ですが、 メールの投函には Google Group への参加が必要です。