torutkのブログ

ソフトウェア・エンジニアのブログ

Mercurialで外部diffツールを指定する

バージョン管理ツール Mercurial は、コマンドラインツールとして提供されており、差分の表示もコマンド環境です。特にWindows上ではコマンド環境は貧弱なので、できれば差分表示はGUIの差分ツールを使用したいところです。

設定方法

Mercurialの設定ファイル(WindowsならMercurial.ini)に以下を記述します。

[extensions]
extdiff =

[extdiff]
cmd.xxx = 外部diffツールのパス
opts.xxx = 外部diffツールのコマンドラインオプション

xxx の部分は使用者が任意の(hgサブコマンドとかぶらないもの)名前を使うことができます。この名前は、hg xxx とhgのサブコマンドのように使います。

外部diffツールのパス、ツール起動時に指定するコマンドラインオプションを、[extdiff]項に記述します。

Windows上でWinMergeを外部diffに使う場合
[extensions]
extdiff =

[extdiff]
cmd.wm = D:\Program Files (x86)\WinMerge\WinMergeU.exe
opts.wm = /r /e /x /ub
hgのコマンド実行時に外部diffを指定する場合
> hg extdiff -p C:\tools\somediff -o "/x /y"