Пишем git diff, открывается meld.

Инструкцию, как использовать meld в качестве git diff tool я нашел в блоге Nathan Hoad, спасибо ему. Проверялось все в Linux Mint 17. Здесь краткий пересказ и кое-что, о чем Nathan не сказал.

Для начала создаем где-нибудь такой скрипт:

#!/usr/bin/python

import sys
import os

os.system('meld "%s" "%s"' % (sys.argv[2], sys.argv[5]))

Пусть он называется diff.py и располагается в каталоге /home/user/scripts.

Этот скриптец будет вызывать meld с нужными параметрами, и его то и нужно установить в качестве diff tool. Делаем это такой командой:

git config --global diff.external /home/user/scripts/diff.py

В моем случае еще пришлось добавить этому файлику права на выполнение, иначе не работало:

chmod +x /home/user/scripts/diff.py

Теперь в директории с репом можно просматривать, что изменилось, такой командой:

git diff filename.js

Можно не указывать конкретный файл:

git diff

В этом случае откроется окно meld с первым изменным файлом. Когда вы закроете его, сразу откроется meld со вторым измененнным файлом и так далее.