Git Diff et Fondre sur Windows
Quelqu'un a fait Meld
travailler avec Git
sur Windows
?
Je suis en train de le faire fonctionner et je n'ai pas de succès.
J'ai fondre installé et quand j'ai appeler en ligne de commande avec deux fichiers comme paramètres des diff bien donc meld est installé correctement. Cependant je ne peux pas le faire fonctionner avec Git
(Git Diff
). J'utilise la version git version 1.8.1.msysgit.1
de Git
.
J'ai essayé plusieurs choses:
J'ai créé un script shell meld.sh
:
#!/bin/bash
meld.exe "$2" "$5"
echo $2
echo $5
et l'a utilisé à partir de git:
[diff]
tool = meld
[difftool "meld"]
cmd = \"D:\\meld.sh\"
J'ai essayé de l'ajouter en tant que difftool comme ceci:
[diff]
tool = meld
[difftool "meld"]
cmd = \"C:\\Program Files (x86)\\Meld\\meld\\meld.exe\"
ou comme ceci:
[diff]
tool = meld
[difftool "meld"]
cmd = '\"/c/Program Files (x86)/Meld/meld/meld.exe\" $PWD/$LOCAL $PWD/$BASE $PWD/$REMOTE --output=$PWD/$MERGED'
Mais il n'a vraiment pas l'air de fonctionner. J'ai aussi essayé de l'écho de la deuxième (2$) et cinquième (5$) de paramètre à partir de mon script shell et pas de sortie. J'ai aussi essayé d'utiliser un script de commandes de plusieurs façons:
meld.exe %2 %5
ou
meld.exe %~2 %~5
mais ça ne fonctionne pas... quelqu'un sait-il comment je peux passer les deux versions du fichier Git
utilise lors de la comparaison de Meld
?
C'est assez ennuyeux...
OriginalL'auteur Jacob Krieg | 2013-11-27
Vous devez vous connecter pour publier un commentaire.
Habituellement, vous pouvez trouver des exemple sur Windows similaire à ce gist, avec meld.exe être dans votre
PATH
)Vous pouvez trouver un plus robuste des paramètres dans "Git mergetool à Fondre sur Windows", mais l'idée reste la même.
L'OP rapports dans les commentaires:
J'ai changé:
Réussi à faire de la
difftool
travail. N'avez pas essayé lemergetool
mais chansements sont qu'ils vont fonctionner de la même. Pour ledifftool
vos commandes écrire les configurations suivantes dans.gitconfig
:[diff] tool = meld [difftool "meld"] cmd = meld.exe \\\"$LOCAL\\\" \\\"$REMOTE\\\"
j'ai changé:[diff] tool = meld [difftool "meld"] cmd = meld.exe $LOCAL $REMOTE
et tout a bien fonctionné. Je vais essayer avecmergetool
plus tard, mais je vais accepter votre commentaire 🙂 Merci!grand. J'ai compris votre commentaire dans la réponse pour plus de visibilité.
J'ai essayé de fondre comme un mergetool et j'ai utilisé les mêmes paramètres pour fondre comme pour le difftool:
cmd = meld.exe $LOCAL $REMOTE
et a travaillé merveilleux. Sinon, il s'est écrasé probablement en raison de l'paramètres. Merci, encore une fois!en supprimant les guillemets sur le
$LOCAL
et$REMOTE
était absolument clé pour moi. doit être commecmd = meld.exe $LOCAL $REMOTE
OriginalL'auteur VonC
Ou encore mieux, si votre sur un de verrouiller le système où l'idiot avec le chemin d'accès n'est pas autorisé ou que vous ne voulez pas polluer votre chemin d'accès de l'espace, vous pouvez simplement mettre le chemin d'accès complet à fondre. Je préfère aussi mon travail actuel code de la copie s'affiche sur la gauche donc j'ai échangé les $DISTANCE et $LOCAL arguments. Aussi l'esprit les conversions de \ à /et ne pas pour obtenir d'échapper les guillemets.
OriginalL'auteur mechsin
Pour Windows 7 (ou même d'autres versions de windows) ajoutez ces lignes dans
.gitconfig
fichier.Noter qu'il n'est pas nécessaire d'utiliser
"
pour le chemin, même si elle contient des espaces. N'oubliez pas d'utiliser des barres obliques au lieu de barres obliques vers l'arrière.OriginalL'auteur Rajeev
J'ai essayé plusieurs variantes d'essayer de mettre en chemin avec
git config
en vain. Depuis que je veux utiliser fondre du git bash fenêtre de la console, ce qui n'travail est d'exporter le chemin vers le Meld répertoire, redémarrez le shell bash et lo & voicigit difftool --tool-help
etgit mergetool --tool-help
maintenant reconnaître fondre et je peux choisir comme mon outil préféré..profil
.gitconfig
OriginalL'auteur Cathy
Une autre astuce pour les utilisateurs en invoquant diff de gitk (en cliquant-droit sur l'élément de menu contextuel Externe"Diff"):
paramètres ci-dessus peuvent obtenir remplacer par gitk préférences de l'utilisateur, dans ce cas, changer les outils en gitk de "Modifier"- > "préférences"- > "Général"->"Externe diff" réglage.
OriginalL'auteur TingQian LI