Cómo hacer que git funcione con vimdiff y trustExitCode

He configurado vimdiff como mergetool para git. Cada vez que hago una fusión, git nunca pregunta si la fusión fue exitosa. También probé:

git config --global mergetool.vimdiff.trustExitCode false

sin diferencia Todavía no hay dudas después de dejar vimdiff con :wqa y tengo que eliminar manualmente los files rancios *.orig .

Tal vez relacionado: cuando trustExitCode configuration de configuration, trustExitCode ya no se muestra con camelcase:

git config --global -l

 core.editor=vim core.autocrlf=input merge.tool=vimdiff alias.co=checkout alias.st=status color.diff=auto color.status=auto color.branch=auto mergetool.vimdiff.trustexitcode=false 

¿Cómo se puede arreglar esto?

Sé que esto no es realmente una respuesta a su pregunta, pero creo que debería verificar un complemento de vim llamado Fugitive .

Incluso hay un screencast sobre cómo resolver conflictos de combinación con vimdiff

Básicamente ofrece todas (o la mayoría de) la funcionalidad de git que encuentras en la terminal, pero dentro de vim de una manera que realmente tiene sentido. Espero que ayude y buena suerte: D.

Sé que esta es una vieja pregunta, pero me encontré con el mismo problema.

La parte sobre la eliminación manual de files obsoletos de respaldo se puede arreglar con:

 git config --global mergetool.vimdiff.keepBackup false 

Creo que otro problema es que trustExitCode no hace lo que crees que hace:

mergetool.<tool>.trustExitCode

Para un command de fusión personalizado, especifique si el código de salida del command de fusión se puede usar para determinar si la fusión fue exitosa. Si no se establece en verdadero, la timestamp del file de destino de fusión está marcada y se supone que la fusión tuvo éxito si el file se ha actualizado; de lo contrario, se solicita al usuario que indique el éxito de la fusión.

Por lo tanto, incluso con esta opción establecida en falso, solo le preguntará si el file no se ha modificado.