hg: неизвестная команда 'extdiff' ' - PullRequest
3 голосов
/ 30 марта 2011

Я не могу понять, почему мое расширение extdiff не работает для Mercurial (на Mac).

Вот как выглядит мой файл .hgrc:

[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 как "kdiff3".но я хотел бы использовать kdiff3 в качестве графического инструмента для сравнения файлов сравнения.

вот так: hg extdiff -p kdiff3

это кажется лучшим способом использования kdiff3 в качествевсплывающий графический интерфейс при использовании Mercurial.

Я новичок в этом и не уверен, правильно ли я это делаю.

Спасибо ...!

Кстати,когда я пытаюсь запустить '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)

1 Ответ

4 голосов
/ 15 апреля 2011

Обратите внимание, что инструмент слияния и внешний diff - это разные инструменты для разных задач.Например, вы можете использовать fmdiff скрипт, чтобы использовать FileMerge для diff и k3diff для инструмента слияния:

Ваш .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» - это имя пользовательской оболочки, поэтому вы можете изменить его на «Нравится», но оно не может быть одним из имен уже зарезервированных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...