Почему git difftool не открывает vimdiff в случае конфликтов?

Прочитав этот , Я настроил git на использование vimdiff в качестве инструмента сравнения /слияния, добавив следующие строки в мой ~ /.gitconfig:

[diff]
        tool = vimdiff
[merge]
        tool = vimdiff
[difftool]
        prompt = false
[alias]
        d = difftool

Но git difftool по-прежнему просто печатает diff (без vimdiff). Есть идеи?

UPDATE. Похоже, git difftool работает нормально, если у меня есть некоторые незафиксированные изменения в репо, то есть он открывает vimdiff, как и ожидалось. Но он не может открыть vimdiff, если я сделаю git difftool после слияния с конфликтом. Есть идеи почему?

4 голоса | спросил Vram Vardanian 30 MarpmWed, 30 Mar 2016 18:03:14 +03002016-03-30T18:03:14+03:0006 2016, 18:03:14

2 ответа


0

Хорошо, ответ здесь , git mergetool должно использоваться вместо git difftool в случай конфликтов.

ответил Vram Vardanian 4 AMpMon, 04 Apr 2016 11:49:05 +030049Monday 2016, 11:49:05
0

Я не знаю, как для why. Но чтобы исправить это, сбросьте состояние конфликтующего файла.

git status
    both modified: mymyfile.txt

git difftool myfile.txt #Fails
git reset myfile.txt

git status
    M myfile.txt

git difftool myfile.txt #should work
ответил Igal S. 31 MaramThu, 31 Mar 2016 11:10:25 +03002016-03-31T11:10:25+03:0011 2016, 11:10:25

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132