Comment configurer kdiff3 au lieu d'émerger en tant que git mergetool?

j'ai Git sur mac OSX Snow Leopard et j'ai essayé d'éditer mon outil merge and diff pour utiliser kdiff3 au lieu d'emerge.

mais quand j'essaie de l'utiliser, il ne lance pas l'interface graphique de kdiff et me maintient avec une interface basée cmd.

mon réglage dans gitconfig sont:

[merge]
     tool = kdiff3
[mergetool "kdiff3"]
    cmd = /Applications/kdiff3.app/Contents/MacOS/kdiff3
    args = $base $local $other -o $output
    trustExitCode = false
[diff]
tool = kdiff3
[difftool "kdiff3"]
cmd = /Applications/kdiff3.app/Contents/MacOS/kdiff3
args = $base $local $other -o $output
trustExitCode = false

il y a évidemment quelque chose qui manque mais qu'ai-je fait de mal ?

49
demandé sur kenorb 2012-03-19 23:17:03

2 réponses

les versions récentes de Git ont intégré le support pour kdiff3 , il n'est donc pas nécessaire de le configurer manuellement en utilisant les paramètres génériques cmd et args . Au lieu de cela faire:

$ git config --global merge.tool kdiff3

et si kdiff3 n'est pas dans votre chemin environnement aussi faire:

$ git config --global mergetool.kdiff3.path /Applications/kdiff3.app/Contents/MacOS/kdiff3

Cela fait git mergetool lancement kdiff3 . Notez que il n'y a aucun moyen pour configurer Git en automatiquement lancez votre outil de fusion après une fusion manuelle qui a des conflits.

dans le cas où vous voulez vraiment voir comment Git appelle kdiff3 en interne, jetez un oeil à la configuration mergetool intégrée pour kdiff3 .

Edit : pour Beyond Compare 4 , qui supporte maintenant Mac OS X, simplement remplacer kdiff3 par bc3 (Oui, "3") et ajuster le chemin dans les lignes ci-dessus. En commençant par Git 2.2.0, vous pourrez utiliser bc comme alias pour bc3 de sorte que vous n'ayez pas à vous soucier du numéro de version.

128
répondu sschuberth 2017-05-23 12:34:35