web-dev-qa-db-fra.com

Comment rechercher un fichier dans le référentiel SVN quand je ne suis pas sûr de le trouver

Un collègue est sûr d’avoir vérifié un fichier: foo_oustanding.dpr mais il ne sait pas quand et où (nous avons beaucoup de branches auxiliaires «outils» et «utilitaires», beaucoup de branches de projets, etc.
J'ai besoin d’un moyen de rechercher ce fichier dans le référentiel entier. Je pouvais consulter l’arborescence source complète sur mon disque dur, mais cela prendrait plusieurs heures. Y at-il un moyen plus rapide? J'ai essayé le navigateur Repo (Tortoise) et il ne semblait pas avoir de recherche. J'ai aussi pensé à jeter le journal, depuis le début des temps. Mais cela semblait idiot.

J'ai à ma disposition:

  • Tortue SVN 1.6
  • Subversion 1.5.6 s'exécutant sur Apache Il s'exécute sur un serveur Windows 2003. 
  • Accès Bureau à distance au serveur, avec droits d'administrateur.
23
Chris Thornton

Si l'enregistrement a été effectué assez récemment, vous pouvez créer un svn log distant détaillé en haut de l'arborescence et afficher un historique de tous les commits de toutes les branches. Vous pouvez ensuite grep la sortie pour le fichier et le nom d'utilisateur. (Vous aurez besoin de la ligne de commande svn pour le faire.)

svn log -v -l 500 http: // myserver/svn_root

8
Ken Liu

Pour voir une liste de tous les fichiers, envoyez grep au fichier texte dans l'invite de commande:

svn list -R myurl >> results.txt 
12
live-love

Avec Client Subversion 1.8+ :

svn log -v URL-OF-REPO-ROOT --search foo_oustanding.dpr

9
Lazy Badger

Bonne question! Il ne semble pas exister de fonction de "recherche" officielle dans Tortoise, mais il semble être possible de rechercher dans le journal dans TortoiseSVN des noms de fichiers, ce qui peut suffire dans de nombreux cas.

7
Pekka 웃

Voir cette question et réponses: 

Recherche de référentiel SVN

svnquery est probablement ce dont vous avez besoin. 

2
Erikk Ross

Je cherche comme ça:

svn list -R url_to_repo | grep Maintain.jar

Il génère ceci:

trunk/Project/pkg/Release/Maintain.jar
0
Peter Šamperl