Как настроить подсказку для diffmerge

В настоящее время у меня есть этот gitconfig:

[diff]
    tool = diffmerge
[difftool "diffmerge"]
    cmd = diffmerge \"$LOCAL\" \"$REMOTE\"
[merge]
    tool = diffmerge
[mergetool "diffmerge"]
    cmd = "diffmerge --merge --result=\"$MERGED\" \"$LOCAL\" \"$(if test -f \"$BASE\"; then echo \"$BASE\"; else echo \"$LOCAL\"; fi)\" \"$REMOTE\""
    trustExitCode = true
[alias]
  df = difftool

Каждый раз, когда я запускаю difftool через git difftool somefile..somefile, я получаю приглашение:

Hit return to launch 'diffmerge':

Как я могу настроить это приглашение так, чтобы, если я наберу "Y", он открыл файл, а если "N", то пропустил его?

1 ответ

Решение

Это немного взломать, но вы могли бы сделать:

[alias]
    df = difftool -y
[difftool "diffmerge"]
    cmd = sh -c 'read -p \"Type Y to launch diffmerge:\" r && \
        test $r = Y \
        && diffmerge \"$LOCAL\" \"$REMOTE\"'

Это предполагает ваш read принимает -p, Если нет, сделайте стандартную вещь:

cmd = sh -c 'printf \"Type Y to launch diffmerge: \" && read r && test $r = Y \
            && diffmerge \"$LOCAL\" \"$REMOTE\"'
Другие вопросы по тегам