Est-il possible de visualiser graphiquement la sortie "svn diff" sous Mac OS?
La plupart des programmes de différences graphiques ne vous permettent de visualiser qu'un fichier par fois. Ce qui est très gênant lorsque vous utilisez svn et que vous avez changé comme 10 fichiers.
Pour Linux, j'ai trouvé une solution dans le programme " kompare " . Je fais:
svn diff > diffOut; kompare diffOut
et comme résultat, je travaille avec un programme graphique et vérifie tous les fichiers à la fois, comme indiqué sur le image .
Y a-t-il la même chose pour Mac OS?
P.S. Le programme "meld" semble faire la même chose (ou pas?) et j'ai déjà essayé de l'installer, mais j'ai un error Par conséquent, je pense que je ne peux pas l'installer sous OSx 10.7.
Il existe kompare pour Mac OS. C’est une partie du SDK KDE et on peut l’obtenir en utilisant MacPorts:
Sudo port install kdesdk4
launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist
export PATH="/Applications/MacPorts/KDE4/kompare.app/Contents/MacOS:"$PATH
et il fonctionne!
Svn supporte ce que l'on appelle external diff .
Pour l'utiliser, il faut créer le script svn-wrapper, qui prendra les paramètres renvoyés par la commande "svn diff" et l'appel différera des paramètres requis.
voici un exemple de paramètres "svn diff" renvoie:
-u -L code/Class1.h (revision 16518) -L code/Class1.h (working copy) code/.svn/text-base/Class1.h.svn-base code/Class1.h
opendiff a besoin des deux dernières. Par conséquent, next bash script conviendra:
#!/bin/sh
if [ $# -lt 2 ]; then
echo "usage: $0 [ignored args...] file1 file2" >&2
exit 1
fi
# The last two arguments passed to this script are the paths to the files
# to diff.
while [ $# -gt 2 ]; do
shift
done
exec opendiff $*
mettez ce script dans le fichier svnwrapper.sh. Fichier exécutable:
chmod +x svnwrapper.sh
et le mettre dans un chemin commun, qui est ajouté à la variable $ PATH . Maintenant, vous pouvez appeler svn en utilisant
svn diff --diff-cmd=svnwrapper.sh
ou ajoutez simplement à la section [helpers] dans le fichier ~/.Subversion/config:
diff-cmd = svnwrapper.sh
Vous pouvez utiliser l'outil FileMerge d'Apple ou Kaleidoscope . Les deux ont des invocations de ligne de commande:
opendiff
ksdiff
KDiff est un programme de différence de texte visuel open source. Vous pouvez l'utiliser sous Windows, Unix, Linux et Mac OSX. Donne le essayer. Sous Windows, il s’ajoute automatiquement pour svn diff. Je n'utilise pas Mac OSX donc je ne peux pas dire que cette fonction est aussi disponible là-bas.
compare ou fusionne deux ou trois fichiers ou répertoires de saisie de texte,
Suivant image url du site kdiff3 montre qu'il compare les annuaires.
DiffMerge est à la fois gratuit et génial. Fait également la comparaison et la fusion à 3 voies.
Kaleidoscope est un très bon choix si vous souhaitez passer rapidement de la comparaison des structures de répertoires aux fichiers des répertoires. Il est également possible de comparer plus de 2 copies. J'ai aussi l'impression que l'algorithme de comparaison de fichiers (blocs de correspondance et changements de code couleur) est vraiment bon. À la fin, un essai de 15 jours est disponible, que vous devez payer.
Il s'agit d'un bel outil de différenciation de fichiers . P4Merge: http://www.perforce.com/product/components/perforce-visual-merge-and-diff-tools
Je ne suis pas tout à fait sûr d'avoir bien compris, mais j'utilise Eclipse avec le plugin subclipse sur un mac.
http://www.Eclipse.org/downloads/?osType=macosx
Assurez-vous de lire la page pour obtenir la version correcte et également prendre en compte la version de svn your using.
Une fois installé, vous pouvez ensuite sélectionner la perspective de synchronisation, afficher tous les fichiers en conflit et nécessiter une modification.
Cependant, je ne suis pas sûr qu'il vous permette de laisser des différences dans les fichiers aléatoires, ce que je pense que vous demandez. Vous pouvez l'essayer cependant.
Bruno De Fraine a écrit des scripts qui lancent FileMerge d’OSX pour chaque fichier: http://www.defraine.net/~brunod/fmdiff/
Installer
> svn co http://soft.vub.ac.be/svn-gen/bdefrain/fmscripts/ fmscripts
> cd fmscripts
> make
> Sudo make install
Diff (lance FileMerge pour chaque fichier)
> svn diff --diff-cmd fmdiff
Beyond Compare n'est pas gratuit, mais je l'ai utilisé et je l'ai aimé.