web-dev-qa-db-ja.com

Mercurialのデフォルトの差分ツールを変更することはできますか?

毎回hg diff file.extコンソールのdiffアプリケーションを使用することになります。 Kdiff3またはWinMergeを使用したい(Windowsを使用している)。

それを変える方法はありますか? Mercurialのドキュメントに参照が見つかりません(私はマージについて話しているのではありません!)。

62
Matías

Mercurial組み込み拡張機能を使用してこれを解決しました...次の行をMercurial.ini(Mercurialフォルダー上)に追加するだけです。

[extensions]
hgext.extdiff=

[extdiff]
cmd.vdiff = kdiff3

Diffの代わりにkdiff3を使用したい場合、使用する必要があるのは次のとおりです。

hg vdiff file.ext
68
Matías

この設定では

[extdiff]
cmd.kdiff3 =

このコマンドを使用して、差分を表示します。

hg kdiff

これは、変更されたすべてのファイルを含むディレクトリツリーを示しています。ファイルをクリックすると、そのファイルのみの差分が表示されます。コマンドにファイルパラメータを追加して、1つのファイルのみを表示できる場合があります。

詳細 ここ

8
Marcus Leon

git difftoolのようなファイル名を入力してすべての変更されたファイルの差分を確認する必要がない場合は、これらを~/.hgrcに追加し、hg difftoolを実行します。

[extensions]
extdiff =

[extdiff]
cmd.vimdiff = vimdiff

[alias]
difftool = !for file in $(hg status -n); do hg vimdiff $file; done
4
musa

数分前にこの問題が発生しました。インストールして、そのパス(デフォルトはc:\ program files\kdiff3)をシステムのPATH e.vに追加しました。ウィンドウを再起動して新しいパスを取得すると、「hg kdiff3」が機能しました。次のように私のベースの「Mercurial.ini」ファイルにあることが判明したため、これにより、kdiff3はシステム上のすべてのhgリポジトリに対して機能します。

[extensions]  
hgext.extdiff =  

[extdiff]  
cmd.kdiff3 =

[merge-tools]  
kdiff3.args = $base $local $other -o $output
3
Ken