117 votes

Git Diff avec Beyond Compare

J'ai réussi à obtenir git pour démarrer au-Delà de Comparer 3 comme un outil de comparaison cependant, quand je fais un diff, le fichier que je suis en comparant contre n'est pas chargé. Seule la dernière version du fichier est chargé et rien d'autre, donc il n'y a rien dans le volet droit de l'au-Delà de Comparer.

Je suis en cours d'exécution git 1.6.3.1 avec Cygwin avec l'au-Delà de 3 Compare. J'ai mis en place au-delà de comparer car ils suggèrent dans la partie support de leur site web avec un script comme tel:

#!/bin/sh

Quelqu'un d'autre a rencontré ce problème et de savoir une solution à cela?

Edit:
J'ai suivi les suggestions par VonC, mais je suis encore avoir exactement le même problème qu'avant. Je suis un peu nouveau pour Git, donc peut-être que je ne suis pas à l'aide de la diff correctement.

Par exemple, je suis en train de voir la diff sur un fichier avec une commande comme tel:

Au-delà de Comparer va alors s'ouvrir et de n'afficher que mon principal actuel.css dans le volet de gauche, il n'y a rien dans le volet de droite. Je voudrais le voir mon principal actuel.css dans le volet de gauche par rapport à la TÊTE, en gros ce que j'ai validées dernière.

Mon git-diff-wrapper.sh ressemble à ceci:
# diff is called by git with 7 parameters:

Mon git config ressemble à ceci pour Diff:

146voto

yehnan Points 2011

Je n'utilisez pas d'adaptateur supplémentaire .sh fichiers. Mon environnement est windows xp, git 1.7.1 sur cygwin, et au-delà de 3 compare. Voici mon .git/config fichier.

[diff]
    tool = bc3
[difftool]
    prompt = false
[difftool "bc3"]
    #use cygpath to transform cygwin path $LOCAL (something like /tmp/U5VvP1_abc) to windows path, because bc3 is a windows software
    cmd = \"c:/program files/beyond compare 3/bcomp.exe\" "$(cygpath -w $LOCAL)" "$REMOTE"
[merge]
    tool = bc3
[mergetool]
    prompt = false
[mergetool "bc3"]
    #trustExitCode = true
    cmd = \"c:/program files/beyond compare 3/bcomp.exe\" "$LOCAL" "$REMOTE" "$BASE" "$MERGED"

Ensuite, j'utilise $ git difftool de comparer et de $ git mergetool à fusionner.

Sur trustExitCode: Personnalisé à la commande de fusion, de préciser si le code de sortie de la commande de fusion peut être utilisé pour déterminer si la fusion a été un succès. Si ce n'est pas le cas alors la fusion de la cible horodatage du fichier est cochée et que la fusion supposé avoir été couronnée de succès si le fichier a été mis à jour, sinon, l'utilisateur est invité à indiquer le succès de la fusion.

28voto

Nick Josevski Points 1997

Merci à @dahlbyk l’auteur du Post-Git pour poste sa config comme un essentiel, m’a aidé à résoudre mon problème de configuration.

21voto

buffer Points 2261

Exécutez ces commandes pour au-delà de comparer 2 (ou remplacer par bc3 en conséquence) :

Ensuite, utilisez ``

6voto

nachonachoman Points 127

Voici mon fichier de config. Il a fallu quelques catch mais maintenant ça fonctionne. J’utilise windows server msysgit et au-delà comparer 3 (apparemment un x86 version). vous remarquerez que je n’avez pas besoin de spécifier tous les arguments, et j’utilise le « chemin » au lieu de « cmd ».

4voto

Mark Conway Points 38

On dirait que BC3 prend uniquement en charge 3 fusion de façon pour PRO Edition. http://www.scootersoftware.com/moreinfo.php?ZZ=kb_editions

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X