2011-03-30 4 views
3

私extdiff拡張は、Mercurialのために働いていない理由を私は理解することはできません。extdiff拡張 - Mercurialのために - 機能していない(Macの場合)

これは私の.hgrcファイルは次のようになります..マージツールとして認識されているKDiff3のまだ

[extensions] 
fetch= 
hgext.extdiff = 

[extdiff] 
cmd.kdiff3 = 

[ui] 
merge=kdiff3 

[merge-tools] 
kdiff3.executable=/Applications/kdiff3.app/Contents/MacOS/kdiff3 
kdiff3.args = $base $local $other -o $output 

とし、「KDiff3の」のようなCMDラインから実行することができます。しかし私がしたいのは、diffファイルを比較するためのGUIツールとしてkdiff3を使用することです。このような

: HG extdiff -p KDiff3の

これはMercurialのを使用するときに、ポップアップGUIとしてKDiff3の使用の最良の方法のように思えます。

が、私はこれに新しいですし、私は右のそれをやっているかどうかわからないです。

おかげで...!ところで

、私は 'HG extdiff'

を実行しようとすると、私が取得:

hg: unknown command 'extdiff' 
'extdiff' is provided by the following extension: 
extdiff command to allow external programs to compare revisions 
use "hg help extensions" for information on enabling extensions 

(それは.hgrcであっても)

+0

'HGヘルプextensions'はおそらく確認しますので、残りは無視されているすべてのロードされているinsn't extdiff拡張、。同じトピックについてのあなたの他の*質問に回答したときには、ここに質問はありません。http://stackoverflow.com/questions/5482344/problem-with-extensions-on-mercurial –

答えて

4

そのマージツールに注意してください。外部差分は異なるタスクのための異なるツールです。 たとえば、あなたがマージ・ツールの差分とk3diffためFileMergeを使用するfmdiffスクリプトを使用することができます。

あなた.hgrcは次のようになります。

[extensions] 
# enable external diff program 
extdiff = 

[extdiff] 
cmd.opendiff = fmdiff 
opts.opendiff = 

[merge-tools] 
# Override stock tool location 
kdiff3.executable = /Applications/kdiff3.app/Contents/MacOS/kdiff3 
# Specify command line 
kdiff3.args = $base $local $other -o $output 
# Give higher priority 
kdiff3.priority = 1 

今、あなたは

hg opendiff myfile.ext 

を使用することができますのでご注意くださいその 'opendiff'はカスタムラッパー名なので、好みに変更できますが、すでに予約名の1つにすることはできません。

関連する問題