Comment obtenir diff entre tous les fichiers à l'intérieur de 2 dossiers qui sont sur le web?
donc je veux comparer ce dossier http://cloudobserver.googlecode.com/svn/branches/v0.4/Boost.Extension.Tutorial/libs/boost/extension/
avec ce http://svn.boost.org/svn/boost/sandbox/boost/extension/
. Je veux obtenir un fichier diff. Ces dossiers sont sous le contrôle de svn mais je préférerais un fichier diff de style git (comme un montré ici ) j'ai essayé git diff
mais cela ne semble pas fonctionner de cette façon pour les dossiers web. Alors comment faire la même chose avec une commande sur Linux?
mise à jour: Nous avons donc eu une grande réponse . Mais cela fonctionne étrangement - il me semble qu'il montre que tous les fichiers (les mêmes fichiers) ont tous leurs contenus remplacés par des contenus identiques (alors que je sais à coup sûr qu'il n'y avait que 3-4 lignes de code changées)...
mise à jour 2: Pour réaliser ce dont j'avais vraiment besoin (fichier dif avec seulement les lignes vraiment changées, avec le style git, sur Linux) faire:
$ svn export http://cloudobserver.googlecode.com/svn/branches/v0.4/Boost.Extension.Tutorial/libs/boost/extension/ repos2 --native-eol CRLF
$ svn export http://svn.boost.org/svn/boost/sandbox/boost/extension/ repos --native-eol CRLF
$ git diff repos repos2 > fileWithReadableDiff.diff
2 réponses
une fois que vous avez les arbres sources, p.ex.
diff -ENwbur repos1/ repos2/
encore mieux
diff -ENwbur repos1/ repos2/ | kompare -o -
et avoir une fissure à elle dans un bon outil graphique :)
- -Isf ignorer l'essentiel de l'espace changements
- -N de détecter les nouveaux fichiers
- -u unifiée
- - R recurse
vos urls ne sont pas dans le même dépôt, vous ne pouvez donc pas le faire avec la commande svn diff
.
svn: 'http://svn.boost.org/svn/boost/sandbox/boost/extension' isn't in the same repository as 'http://cloudobserver.googlecode.com/svn'
une autre façon de le faire, est d'exporter chaque repos en utilisant svn export
, puis d'utiliser la commande diff pour comparer les 2 répertoires que vous avez exportés.
// Export repositories
svn export http://svn.boost.org/svn/boost/sandbox/boost/extension/ repos1
svn export http://cloudobserver.googlecode.com/svn/branches/v0.4/Boost.Extension.Tutorial/libs/boost/extension/ repos2
// Compare exported directories
diff repos1 repos2 > file.diff