144 votes

Recherche dans l'historique de la subversion (texte intégral)

Existe-t-il un moyen d'effectuer une recherche plein texte d'un dépôt subversion, y compris tout l'historique ?

Par exemple, j'ai écrit une fonctionnalité que j'ai utilisée quelque part, mais qui n'était plus nécessaire, alors j'ai mis les fichiers en svn rm, mais maintenant je dois la retrouver pour l'utiliser pour autre chose. Le journal svn dit probablement quelque chose comme "supprimé les trucs inutilisés", et il y a beaucoup de vérifications de ce genre.

72voto

luis gutierrez Points 418
git svn clone <svn url>

git grep < some regex >

45voto

bahrep Points 8212

svn log dans Apache Subversion 1.8 supporte une nouvelle fonction --search option. Ainsi vous pouvez rechercher les messages de journal de l'historique du dépôt Subversion sans utiliser d'outils et de scripts tiers.

svn log --search recherche dans l'auteur, la date, le texte du message du journal et la liste des chemins modifiés.

Voir Notes de publication d'Apache Subversion 1.8 .

24voto

Si vous utilisez Windows, consultez la page SvnQuery . Il maintient un index plein texte des dépôts locaux ou distants. Chaque document déposé dans un référentiel est indexé. Vous pouvez effectuer des recherches de type google à partir d'une simple interface web.

21voto

Bas Grolleman Points 171

J'utilise un petit script shell, mais cela ne fonctionne que pour un seul fichier. Vous pouvez bien sûr le combiner avec find pour inclure plus de fichiers.

#!/bin/bash
for REV in `svn log $1 | grep ^r[0-9] | awk '{print $1}'`; do 
  svn cat $1 -r $REV | grep -q $2
  if [ $? -eq 0 ]; then 
    echo "$REV"
  fi 
done

Si vous voulez vraiment tout rechercher, utilisez la fonction svnadmin dump et parcourir cette commande.

9voto

Mike Schall Points 2921

J'ai cherché quelque chose de similaire. La meilleure solution que j'ai trouvée est OpenGrok . Je n'ai pas encore essayé de le mettre en œuvre, mais il semble prometteur.

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