P4merge терпит неудачу при выполнении diff каталога?

Я пытаюсь использовать p4merge как свой инструмент diff/merge в git.

Но у меня возникла серьезная проблема.

Я могу использовать p4merge как diffftool с git difftool <sha1> <sha1>, он работает хорошо. И я также могу использовать его как mergetool. Но когда я пытаюсь позволить ему сделать каталог diff как git difftool -d <sha1> <sha1>, он выдает диалоговое окно с сообщением:

Ошибка: '/var/folders/6s/6sCbckgPGH42yLSh2eXveE+++TI/-Tmp-/ git-difftool.9rgKV/left' (или указывает на) недопустимый файл. '/var/folders/6s/6sCbckgPGH42yLSh2eXveE+++TI/-Tmp-/git-difftool.9rgKV/right' (или указывает на) недопустимый файл.

Используйте 'p4merge -h' для получения дополнительной справки.

Итак, это вызвано тем, что p4merge не поддерживает diff каталога? есть ли способ исправить это?

Кстати, это мои настройки .gitconfig

; p4merge settings
; Can't do directory diff?
[difftool "p4merge"]
    cmd = /Applications/p4merge.app/Contents/MacOS/p4merge \"$LOCAL\" \"$REMOTE\"
    trustExitCode = false
[mergetool "p4merge"]
    cmd = /Applications/p4merge.app/Contents/MacOS/p4merge \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\" 
    trustExitCode = false

[difftool]
    prompt = false
[diff]
    ; tool = kdiff3
    tool = p4merge
[merge]
    ; tool = kdiff3
    tool = p4merge

Ответы

Ответ 1

Подтверждено, что p4merge не поддерживает каталог diff.