Mercurialのデフォルトの差分ツールを変更することはできますか?
-
04-07-2019 - |
質問
hg diff file.ext
を実行するたびに、コンソールdiffアプリケーションを使用することになります。 Kdiff3またはWinMergeを使用します(Windowsを使用しています)。
それを変更する方法はありますか? Mercurialのドキュメントにリファレンスが見つかりません(マージの話ではありません!)。
解決
Mercurialの組み込み拡張機能を使用してこれを解決しました... Mercurial.ini(Mercurialフォルダー)に次の行を追加するだけです:
[extensions]
hgext.extdiff=
[extdiff]
cmd.vdiff = kdiff3
diffの代わりにkdiff3を使用する場合、使用する必要があるのは次のとおりです。
hg vdiff file.ext
他のヒント
この設定で
[extdiff]
cmd.kdiff3 =
このコマンドを使用して差分を表示します:
hg kdiff
これは、変更されたすべてのファイルを含むディレクトリツリーを示しています。ファイルをクリックすると、そのファイルだけの差分が表示されます。コマンドにファイルパラメータを追加して、1つのファイルだけを表示できる場合があります。
詳細こちら。
数分前にこの問題が発生しました。私はちょうどそれをインストールし、そのパス(デフォルトはc:\ program files \ kdiff3にあります)をシステムPATH e.vに追加しました。新しいパスを取得するためにウィンドウを再起動し、「hg kdiff3」ただ働いた。判明したように、以下は私のベース「mercurial.ini」にあります。ファイル。これにより、システム上のすべてのhgリポジトリに対してkdiff3が機能します。
[extensions]
hgext.extdiff =
[extdiff]
cmd.kdiff3 =
[merge-tools]
kdiff3.args = $base $local $other -o $output
git difftool
のようなファイル名を入力する必要がなく、変更されたすべてのファイルの差分を確認する必要がある場合は、これらを〜/ .hgrcに追加します
、および hg difftool
を実行します。
[extensions]
extdiff =
[extdiff]
cmd.vimdiff = vimdiff
[alias]
difftool = !for file in $(hg status -n); do hg vimdiff $file; done