Почему vsdiffmerge всегда открывать новый VisualStudio и не показывать разницу

Я хочу использовать vsdiffmerge в качестве инструмента git diff. И я установил .git/config ниже.

[diff]
    tool = vsdiffmerge
[difftool]
      prompt = true
[difftool "vsdiffmerge"]
      cmd = \"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\Common7\\IDE\\CommonExtensions\\Microsoft\\TeamFoundation\\Team Explorer\\vsDiffMerge.exe\" \"$LOCAL\" \"$REMOTE\" //t
      keepbackup = false
      trustexistcode = true
[merge]
      tool = vsdiffmerge
[mergetool]
      prompt = true
[mergetool "vsdiffmerge"]
      cmd = \"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\Common7\\IDE\\CommonExtensions\\Microsoft\\TeamFoundation\\Team Explorer\\vsDiffMerge.exe\" \"$LOCAL\" \"$REMOTE\" //t //m
      keepbackup = false
      trustexistcode = true

Я нахожу, что он может хорошо работать несколько раз, но он откроет новый VisualStudio и не покажет вкладку diff. Я пытаюсь удалить //t но не поможет.

Я хочу задать два вопроса:

  1. Как сделать, чтобы vsdiffmerge открывал вкладку diff при открытии VisualStudio?

  2. Как использовать git diff multi-file, если я не хочу вводить весь файл в y, Я вижу количество файлов 133, что я должен нажать 133 y,

0 ответов

Команды для difftool и mergetool должны немного отличаться:

Попробуй это:

  • Команда Difftool: /t "$LOCAL" "$REMOTE"

  • Команда MergeTool: /m /t "$LOCAL" "$REMOTE" "$BASE" "$MERGED"

Вот пример для Visual Studio 2019, но он должен быть похож на Visual Studion 2017:

difftool.vsdiffmerge.path=C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/Common7/IDE/CommonExtensions/Microsoft/TeamFoundation/Team Explorer/vsDiffMerge.exe
difftool.vsdiffmerge.cmd=/t "$LOCAL" "$REMOTE"
mergetool.vsdiffmerge.path=C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/Common7/IDE/CommonExtensions/Microsoft/TeamFoundation/Team Explorer/vsDiffMerge.exe
mergetool.vsdiffmerge.cmd=/m /t "$LOCAL" "$REMOTE" "$BASE" "$MERGED"

Я использую / обедаю это из GitExtensions, но оно должно быть очень похоже на другие клиентские приложения git.

Другие вопросы по тегам