¿Por qué "git difftool" no abre la herramienta directamente?

157

Lo configuré gitasí:

git config --global diff.tool meld

Cuando corro:

git difftool

Me sale el siguiente mensaje:

Viewing: 'hello.txt'
Hit return to launch 'meld': 

Luego, si presiono Enter, meldse lanzará.

¿Cómo puedo desactivar este mensaje, para que meldse inicie inmediatamente después de escribir git difftool?

Misha Moroshko
fuente
Ver también: stackoverflow.com/questions/1220309/…
Caracol mecánico
44
Creo que también una pregunta válida es: ¿por qué se necesita aprobación adicional por defecto?
Radek Postołowicz

Respuestas:

64
man git-difftool

OPTIONS
   -y, --no-prompt
       Do not prompt before launching a diff tool.
Bill Door
fuente
20
La respuesta de @ZJR parece ser la respuesta preferida de la mayoría de las personas (incluyéndome a mí).
Jono
1
Refiérase a la respuesta de ZJR (en caso de cambio de nombre de usuario): stackoverflow.com/questions/7897517/…
Peter Mortensen
mejor respuesta a continuación.
m1m1k
@ m1m1k Mejor comentario arriba :-)
Duncan Jones
379

También hay una opción:

difftool.prompt
  Prompt before each invocation of the diff tool.

El siguiente comando desactiva el indicador globalmente (para todos los repositorios):

git config --global difftool.prompt false

Que es como escribir en ~/.gitconfig:
(o en %HOMEDRIVE%%HOMEPATH%\.gitconfig)

[difftool]
  prompt = false
ZJR
fuente
16
Esta es la solución adecuada. La respuesta marcó una solución, no guarda ninguna pulsación de tecla. Muchas gracias.
sweisgerber.dev
2
@sebweisgerber Acabo de parafrasear la respuesta marcada y descubrí cómo hacerlo permanente. Probablemente no habría encontrado la opción de lo contrario.
ZJR
1
Esta es una mejor respuesta porque manejará el caso como la acción predeterminada, lo que permitirá que el escritor de preguntas continúe usando git-difftool como quiera.
Neil Monroe
En realidad, la --addopción está fuera de lugar aquí. Significa agregar la configuración "prompt = false" a las entradas de "promt" que ya existen, mientras que el objetivo es reemplazar el valor actual o agregarlo en primer lugar. Este comportamiento se logra sin --add.
user905686
17
Asegúrese de no colocar en la propmt = falsesección [difftool "toolname"] `por accidente. No funciona Debería estar en la [difftool]sección.
Fosna