MercurialEclipseプラグインを使う
インストール (MercurialEclipse 2.0.1 + Eclipse 3.7)
Windows用のmercurialが別途必要。事前にTortoiseHGをインストールする。今回は2.6.2(x64)を使用。
http://tortoisehg.bitbucket.org/ja/
エクスプローラーでのコンテキストメニューが不要な場合は、カスタムインストールでShell Extensionをはずす。
MercurialEclipseのサイトは次のとおり。
https://bitbucket.org/mercurialeclipse/main/wiki/Home
- Eclipseのヘルプ>新規インストールを選択
- ダイアログが表示される。[追加]をクリック
- 名前: 任意
- ロケーション: http://mercurialeclipse.eclipselabs.org.codespot.com/hg.wiki/update_site/stable
- [OK]をクリック
- 一覧からMercurialEclipse Stable Releaseを選択して[完了]
MercurialEclipseにhgコマンドの所在を教える。
- ウィンドウ>設定
- チーム > Mercurial
- Mercurial 実行可能ファイルにhg.exeのパスを指定(ex. C:\Program Files\TortoiseHg\hg.exe )
コメントに日本語を使用しても問題ないようだが、Shift_JISで記録されているのかそうでないのかは未確認。
インストール (MercurialEclipse 1.7)
本家からプラグインをダウンロード。Windows用バイナリも添付されているらしい。
http://javaforge.com/project/HGE
(http://www.vectrace.com/mercurialeclipse/ から たどれる)
上記の説明に従い、EclipseのSoftwre Updatesに以下のURLを指定してダウンロード。
http://cbes.javaforge.com/update
説明では事前にJavaForgeへのログインが必要だと記載されているが、実際にはログインせずにダウンロードできる。
インストール (古い)
Windows + eclipse 3.5 の場合。
mercurial本体
本家からWindows用バイナリをダウンロード、インストール。
http://mercurial.selenic.com/
※ ひょっとすると別途Pythonが必要??
PATHにmercurialインストール先を追加(インストーラがやってくれる)
インストール確認は、コマンドプロンプトで hg を実行して、ヘルプが表示されるかを確認する。
プラグイン
以下のサイトに記載のとおり。
http://www.vectrace.com/mercurialeclipse/
eclipse 3.xの場合、
- [Help]>[Install New Software...]で[Add...]
- URLに
http://www.vectrace.com/eclipse-update/
使用方法
本家マニュアル参照
http://bitbucket.org/mercurialeclipse/main/wiki/First_steps
常にエラー
(MercurialEclipse 1.7.1)
consoleに常に以下のエラー
abort: unknown encoding: windows-31j, please check your locale settings
以下の方法で解決
- Windows > Preferences > General > Workspace の Text File EncodingでOtherを選択しUTF-8と指定。
コミット時のコメントが日本語だと失敗する
(MecurialEclipse 1.4.1286で確認)
ダイアログには以下のメッセージが表示される
transaction abort! rollback completed
consoleには以下が出力される。
abort: decoding near 'xxxx': 'utf8' codec can't decode byte 0x83 in position 0: unexpected code byte!
.hg/hgrcに以下の設定をすることで回避できる。
[defaults] commit = --encoding cp932
HGENCODINGを設定するのが正攻法らしいが、効果なし。
set HGENCODING=cp932
なお、eclipseを使わず、コマンドプロンプトからhg commitを実行する場合にはこの問題は発生せず。
- Mercurial本家のWindowsでの文字エンコーディングに関する説明
http://mercurial.selenic.com/wiki/CharacterEncodingOnWindows - hgrcの説明
http://www.selenic.com/mercurial/hgrc.5.html - HGENCODINGの説明→hgコマンドで参照
hg help environment
push先がhttpsでかつユーザー認証ありだと接続に失敗
(MecurialEclipse 1.4.1286で確認)
事前に.hg/hgrcに接続先を設定することで回避できた。
[paths] default = https://name:pass@host.example.com/path/