git difftool не запускает Beyond Compare

Я борюсь с тем, чтобы git запускал Beyond Compare в качестве моего инструментария.

Я использую Git для Windows, 32-разрядную версию Windows 7 и Beyond Compare 4

$ git --version
git version 1.9.5.msysgit.1
$ git config --list

[diff]
tool = bc3

[difftool "bc3"]
path = c:/Program Files/Beyond Compare 4/bcomp.exe

[merge]
tool = bc3

[mergetool "bc3"]
path = c:/Program Files/Beyond Compare 4/bcomp.exe

Теперь я прочитал другие вопросы здесь и там и выполнил такие инструкции, как:

  • Замените 'bc3' на другое имя, например, 'abc3' или'yondcompare '
  • Команда: git difftool --tool = bc3 MyFile.java
  • Изменение пути 'bc3' в .gitconfig на 'c: \ Program Files \ Beyond Compare 4 \ bcomp.exe'
  • В путь добавлен $ LOCAL $ REMOTE

Я понял, что он всегда запускает средство просмотра / просмотра консоли diff по умолчанию (vimdiff, если я не ошибаюсь), хотя и передает вышеупомянутый параметр '--tool = bc3' или '--tool = anyname', в ' git difftool 'команда.

Наконец, он просто работает для «git mergetool», в этом случае запускается вне всякого сравнения, и, как вы можете видеть, параметры такие же.

Если я что-то забыл или требуются дополнительные сведения, дайте мне знать Спасибо

Когда я ввожу команду git difftool

image


person diegot    schedule 10.07.2015    source источник
comment
Кажется, что инструмент слияния и инструмент сравнения отличаются друг от друга. Прочтите это сообщение: stackoverflow.com/questions/255202/   -  person Eduardo Yáñez Parareda    schedule 10.07.2015
comment
См. scootersoftware.com/support.php?zz=kb_vcs#gitwindows. - Если это не сработает, попробуйте ручную настройку, показанную в разделе «GitHub для Windows» ниже.   -  person poke    schedule 10.07.2015


Ответы (3)


Чтобы настроить Beyond Compare 4 в качестве внешнего инструмента сравнения в Git для Windows 1.9.5, следуйте инструкциям в Использование Beyond Compare с системами контроля версий.

Чтобы сравнить файл в Beyond Compare после выполнения инструкций по настройке:

git difftool filename.ext

Если и это не помогло, убедитесь, что в вашем c:\users\username\.gitconfig файле указаны правильные настройки:

[diff]
    tool = bc3
[difftool "bc3"]
    path = c:/program files/beyond compare 4/bcomp.exe
[merge]
    tool = bc3
[mergetool "bc3"]
    path = c:/program files/beyond compare 4/bcomp.exe

Если это по-прежнему не помогает, убедитесь, что у вас нет настройки для репозитория в .git\config, переопределяющей глобальные настройки.

person Chris Kennedy    schedule 14.07.2015

Ваш git config --list результат странный. У меня есть пары имя-значение и нет заголовков разделов (нерелевантные свойства опущены):

diff.tool=bc3
difftool.bc3.path=c:/Program Files (x86)/Beyond Compare 3/bcomp.exe
merge.tool=bc3
mergetool.bc3.path=c:/Program Files (x86)/Beyond Compare 3/bcomp.exe

По мне, Beyond Compare 3 отлично работает с git difftool <filename>, никаких странных опций. Beyond Compare 4 очень похож.

Моя версия git почти такая же

git --version
git version 1.9.5.msysgit.0

Возможно, вы установили параметры для другого репозитория; если git difftool приходит с diff -cc, вы определенно не настроили Beyond Compare в качестве инструмента сравнения по умолчанию. Или, может быть, ваш bcomp.exe капризничает.

person Lorenzo Gatti    schedule 10.07.2015
comment
То, что я вставил выше, было результатом моего файла конфигурации. Это был не совсем результат команды git config --list - person diegot; 11.07.2015

Формат записи cohfig всегда меняется. Это работает для Windows 10, VS 2019, Git 2.25.

[merge]
    tool = BeyondCompare4
[diff]
    guitool = beyondcompare4
    tool = beyondcompare4
[core]
    autocrlf = false
    editor = \"C:\\Program Files\\Microsoft VS Code\\Code.exe\" --wait
[difftool "beyondcompare4"]
    path = \"C:\\Program Files\\Beyond Compare 4\\bcomp.exe\"
    cmd = \"C:\\Program Files\\Beyond Compare 4\\bcomp.exe\" \"$LOCAL\" \"$REMOTE\"
    keepBackup = false
[mergetool "BeyondCompare4"]
    path = \"C:\\Program Files\\Beyond Compare 4\\bcomp.exe\"
    cmd = \"C:\\Program Files\\Beyond Compare 4\\bcomp.exe\" \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\"
person Vassil Sanych    schedule 15.03.2020