Я хочу git diff
быть быстрым решением командной строки, чтобы увидеть разницу между двумя файлами, а затем я хочу, чтобы git difftool
запускал meld для более графического представления различий в файлах.Почему git difftool использует git diff вместо этого?
В настоящее время, git diff
делает именно то, что я хочу его, однако, когда я бегу git difftool script.js
, мерзавец пытается запустить vimdiff вместо Meld:
Viewing (1/1): 'script.js'
Launch 'vimdiff' [Y/n]:
Если я указываю инструмент с git difftool -t meld script.js
он пытается запустить сливаться, как он должен:
Viewing (1/1): 'script.js'
Launch 'meld' [Y/n]:
Как получить git difftool <filename>
начать сливаться в то время как git diff <filename>
все еще использует vimdiff?
Мой .gitconfig содержит следующее:
[diff]
tool = vimdiff
[difftool]
tool = meld
[difftool "meld"]
path = C:\\Program Files (x86)\\Meld\\Meld.exe
совершенны, что сделал трюк, спасибо! Но я не совсем понимаю, что произошло. Эта команда изменила '[diff] tool = vimdiff' на' [diff] tool = meld'. Как git знает использовать vimdiff для 'git diff', когда vimdiff больше не указан где-либо в файле .gitconfig? –
Diff не использует vimdiff. AFAIK, git diff реализует свой собственный алгоритм diff/способ отображения diff в оболочке. –