2014-04-18 4 views
1

J'ai créé un petit script pour lancer meld lors de l'utilisation git diff, similar to this question.outil externe conditionnelle Comparaison Git Diff

Ceci est bien et tout, mais en raison de divers inconvénients que je git diff comme pour lancer meld dans certains conditions. Y at-il un moyen de créer un alias dans mon .gitconfig pour me permettre de lancer meld dans certaines circonstances?

entre ainsi git difftool une manière de lancer des programmes externes

Répondre

0

finit, oui et non. Pour ce faire, vous devez utiliser git difftool. Il y a quelques pièges sur le chemin pour que cela fonctionne. Tout d'abord, il vous demandera quel éditeur vous voulez utiliser à chaque fois, ce qui est une douleur. Vous souhaiterez passer un indicateur -y en difftool.

En supposant que l'outil de comparaison par défaut git utilise, vous souhaiterez également spécifier exactement quel outil vous voulez. Vous pouvez le faire de deux manières, l'une à -t <toolname> l'autre --tool=<toolname>.

En supposant que vous souhaitiez toujours utiliser par défaut un outil spécifique, vous pouvez le définir en utilisant .gitconfig.

[difftool] 
    gui = meld 

Cette devrait définir l'outil par défaut difftool vous demande, laissez-moi savoir si cette partie n'est pas exacte.

Voici une copie finale de mon .gitconfig qui a un alias de travail pour difftoool.

[alias] 
    mdiff = difftool -t "meld" -y 

Ceci a l'avantage supplémentaire de ne pas avoir à toujours attendre meld pour ouvrir, ainsi que toujours être en mesure d'obtenir un diff texte sur la ligne de commande.

+0

Je ne comprends pas votre réponse. Pourriez-vous s'il vous plaît essayer de reformuler le texte plus clairement et simplement? J'ai exactement le même problème et je cherche désespérément une solution. Je voudrais lancer la fusion quand je suis en 'X' et' diff' en console. –

+0

@MartinVegter C'est très clair et simple. J'ai configuré 'git difftool' pour lancer un outil de comparaison externe en utilisant l'alias' git mdiff '. Si vous voulez "juste travailler", copiez la section alias dans votre '.gitconfig' –