Ubuntu10.10 自宅サーバ構築手順:分散バージョン管理環境(Mercurial)インストール

Git on Windows7の環境構築がいまいちスムーズに行かない(主に文字化けの件)ので、今後の事(恐らくはWindowsPCをメインマシンとする開発環境で進める)を考えてWindows/Linux双方で作業が進め易そうなMercurialにも手を伸ばしてみる事に。

入門Mercurial Linux/Windows対応

入門Mercurial Linux/Windows対応

Linux/Windows環境共に参考にするのはこの書籍。先日のSCMBCでも著者の方が飛び入りで見学に来られていましたね。

インストール

  • いつものようにapt-getコマンド一発で。
absj31@absj31-MyHomeServer:~$ sudo apt-get install -y mercurial
[sudo] password for absj31: 
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  libswing-layout-java javahelp2 linux-headers-2.6.35-22 linux-headers-2.6.35-22-generic libfelix-main-java visualvm libfelix-framework-java libnb-platform12-java
これらを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
  mercurial-common
提案パッケージ:
  qct vim emacs kdiff3 tkdiff meld xxdiff python-mysqldb python-pygments
以下のパッケージが新たにインストールされます:
  mercurial mercurial-common
アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 2 個。
1,373kB のアーカイブを取得する必要があります。
この操作後に追加で 5,444kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ maverick/universe mercurial-common all 1.6.3-1 [1,320kB]
取得:2 http://jp.archive.ubuntu.com/ubuntu/ maverick/universe mercurial i386 1.6.3-1 [53.2kB]
1,373kB を 0秒 で取得しました (1,777kB/s)
未選択パッケージ mercurial-common を選択しています。
(データベースを読み込んでいます ... 現在 203928 個のファイルとディレクトリがインストールされています。)
(.../mercurial-common_1.6.3-1_all.deb から) mercurial-common を展開しています...
未選択パッケージ mercurial を選択しています。
(.../mercurial_1.6.3-1_i386.deb から) mercurial を展開しています...
man-db のトリガを処理しています ...
mercurial-common (1.6.3-1) を設定しています ...
mercurial (1.6.3-1) を設定しています ...

Creating config file /etc/mercurial/hgrc.d/hgext.rc with new version
python-support のトリガを処理しています ...

absj31@absj31-MyHomeServer:~$

インストール確認

  • hgコマンドを用いて導入完了を確認。
absj31@absj31-MyHomeServer:~$ hg version
Mercurial - 分散構成管理ツール(バージョン 1.6.3)

著作権 (C) 2005-2010 Matt Mackall <mpm@selenic.com> 他
本製品はフリーソフトウェアです。頒布/改変の際はライセンス条項をお読み
ください。市場適合性や特定用途への可否を含め、本製品は無保証です。
absj31@absj31-MyHomeServer:~$ 
absj31@absj31-MyHomeServer:~$ hg -v
Mercurial - 分散構成管理ツール(バージョン 1.6.3)

著作権 (C) 2005-2010 Matt Mackall <mpm@selenic.com> 他
本製品はフリーソフトウェアです。頒布/改変の際はライセンス条項をお読み
ください。市場適合性や特定用途への可否を含め、本製品は無保証です。

基本コマンド:

 add:
      指定ファイルの追加登録予約
 annotate, blame:
      ファイル行毎のリビジョン情報表示
 clone:
      既存リポジトリの複製
 commit, ci:
      指定ファイルないし全ての変更内容のリポジトリへの記録
 diff:
      作業領域全体(ないし指定ファイル)の差分抽出
 export:
      1つ以上のリビジョンに対するヘッダおよび変更内容の出力
 forget:
      次回コミットにおける指定ファイルの登録除外
 init:
      指定されたディレクトリでの新規リポジトリの作成
 log, history:
      リポジトリ全体ないしファイルの変更履歴の表示
 merge:
      作業領域の内容と他のリビジョンのマージ
 pull:
      指定リポジトリからの変更履歴の取り込み
 push:
      指定リポジトリへの変更履歴の反映
 remove, rm:
      次回コミットにおける指定ファイルの登録除外
 serve:
      独立したウェブサーバの実行開始
 status, st:
      作業領域のファイル操作状況の表示
 summary, sum:
      作業領域状態の概要表示
 update, up, checkout, co:
      作業領域の内容更新(ないしリビジョンの切り替え)

グローバルオプション:
 -R --repository リポジトリ  リポジトリのルート位置、ないしバンドルファイルのパス
    --cwd ディレクトリ       作業領域の変更
 -y --noninteractive         問い合わせをせず、確認事項は全て 'yes' とみなす
 -q --quiet                  出力を抑止
 -v --verbose                付加的な出力を有効化
    --config 設定 [+]        オプション設定を指定/上書き(指定形式は 'section.name=value')
    --debug                  デバッグ出力を有効化
    --debugger               デバッガを開始
    --encoding 文字コード    文字エンコーディングの設定 (既定値: UTF-8)
    --encodingmode モード    文字エンコーディングのモード設定 (既定値: strict)
    --traceback              例外浮揚の際に常にトレースバックを表示
    --time                   コマンド実行の所要時間を計測
    --profile                コマンド実行のプロファイルを表示
    --version                バージョン情報を表示して終了
 -h --help                   ヘルプ情報を表示して終了

[+] 印付きのオプションは複数回指定可能です

全コマンドの一覧は "hg help" で表示されます
absj31@absj31-MyHomeServer:~$ 

まぁ、こっちは特に問題無さ気という事で。以降書籍を元にした作業記録へ。