Windows 版 Mercurial Eclipse で SSH を利用する

その前に自分の考え

Mercurial Eclipse を使うのならば、TortoiseHg を使えばいいと思う。
理由としては、WindowsMercurial Eclipse を利用するには、前提条件として TortoiseHg は必ずインストールをしておく必要があるためだ。そして、SSH 経由でリポジトリにアクセスする手間は TortoiseHg と Mercurial Eclipse もたいして変わらないからだ。
Mercurial Eclipse の前提条件に、TortoiseHg のインストールが必要なことを考えると、ひと手間増える Mercurial Eclipse をインストールする必要性がなくなるように思える。
しかも、TortoiseHg は Explorer に統合されて常時利用できるため、Eclipse の起動をして使う必要がある Mercurial Eclipse よりも便利だと思うからだ。

インストール手順

  1. Putty をインストールする
    日本語版: PuTTY ごった煮版
  2. putty.exe と同じフォルダにある puttygen.exe で秘密鍵を生成する(秘密鍵SSH 接続をする必要がある場合)
    作成方法は「Putty による鍵交換による SSH 接続」を参照
  3. TortoiseHg をインストールする
  4. Mercurial Eclipse をインストールする
    Mercurial Eclipse のインストール方法(Windows 版は「Windows Binaries for Mercurial (推奨)」にチェックを入れること)

SSH 接続の設定

mercurial.ini に SSH 接続に必要な設定を入力する。「mercurial.ini」に次の一行を記述して保存する。mercurial.ini は Windows にログインしているユーザーのホームディレクトリにある。ない場合は、新規にテキストファイルを作成し、ファイル名を「mercurial.ini」に変更して開く。
ホームディレクトリは、Windows XP の場合は「C:\Documents and Settings\」下か、Windows 7 などの場合は「C:\Users\」下にある。

[ui]
ssh = "C:\Program Files (x86)\TortoiseHg\TortoisePlink.exe" -agent

「C:\Program Files (x86)\TortoiseHg\TortoisePlink.exe」は TortoiseHg がインストールされたフォルダ内にある「TortoisePlink.exe」へのパスを入力する。
Mercurial のプロジェクトを生成する。

次にリポジトリのパスと SSH 接続認証のユーザー名を入力する。
そして、「TortoiseHg を使って SSH 鍵認証が必要なリポジトリを取得する」を参考にして、pagent.exe に秘密鍵を登録しておく。
入力する URL の形式は、「ssh://ユーザー名@ホスト名:ポート番号/ユーザーのホームディレクトリからみたリポジトリへのパス」となる。例えば、「ssh://yourname@www.exsample.com:25600/works/repos/your/project/name」となる。ポート番号は、SSH のデフォルト・ポート番号 22 ならば、入力を省略できる。
ユーザー名はこの例の場合だと、「yourname」になる。パスワードは鍵認証の場合は入力する必要がない。なぜならば、pageant.exe に秘密鍵を登録する際に、秘密鍵のパスワードを入力することで、Eclipse 側でパスワードを登録する必要がなくなるからだ。

そして、リモートホストとローカル側で鍵認証を開始する。

鍵認証が成功すれば、次のように画面が進んでいき、設定から Mercurial プロジェクトの生成は完了する。