Просто сделайте быстрый скрипт и установите его как инструмент для extdiff.Я предполагаю, что вы работаете в Windows, но независимо от того, что эквивалентно PowerShell, это:
#!/bin/sh
binary-to-text $1 /tmp/$1.sct
binary-to-text $2 /tmp/$2.sct
diff /tmp/$1.sct /tmp/$2.sct
rm /tmp/$1.sct /tmp/$2.sct
Это создает, сравнивает, а затем удаляет текстовые версии.Вы должны быть осторожны, чтобы не перезаписать, иметь дело с несколькими одновременными вызовами и т. Д.
Затем настройте новую команду для запуска скрипта:
[extdiff]
cmd.mydiff = that_script_above.sh
Затем вы можете делать такие вещи:
hg mydiff
В идеале у вас в репозитории есть только исходный формат «источник», а не текстовый формат, так как вы не должны сохранять сгенерированные элементы в репо - потому что если вы обновляете один, но недругой у вас противоречивое состояние.Создание сопоставимых текстовых файлов по запросу - лучший способ.