Comment puis-je rechercher si un fichier nommé foo.txt
a déjà été enregistré dans mon référentiel svn (dans n'importe quelle révision)?
Cliquez avec le bouton droit sur la racine du dossier extrait> TortoiseSVN> Afficher le journal
Vous pouvez également y saisir des noms de fichiers.
Cela devrait fonctionner pour vous:
svn log -r 0:HEAD -v $REPOSITORY_PATH | grep "/foo.txt"
Cela vous donnera les chemins d'accès aux fichiers et l'état du journal. Si vous obtenez des hits, vous savez qu'il a existé à un moment donné. Si vous n'obtenez aucun résultat, rien dans le référentiel ne correspond à aucune révision. Vous verrez également les états de chaque ligne de journal, par exemple:
A /some/path/foo.txt D /some/path/foo.txt
Mais je suppose que les informations supplémentaires ne sont pas un problème pour vous. :)
Utilisez le client Subversion 1.8+ et nouveau --search
et --search-and
les options deviennent disponibles pour svn log
commande . Ces options ne permettent pas d'effectuer une recherche en texte intégral dans un référentiel et ne recherchent que les données suivantes:
svn:author
propriété non versionnée),svn:date
propriété non versionnée),svn:log
propriété non versionnée),Autant que je suppose, vous pouvez rechercher "foo.txt" avec la ligne de commande suivante:
svn log -v --search "foo.txt"
.
Voici la page d'aide complète sur ces nouveaux svn log
Options de recherche:
If the --search option is used, log messages are displayed only if the
provided search pattern matches any of the author, date, log message
text (unless --quiet is used), or, if the --verbose option is also
provided, a changed path.
The search pattern may include "glob syntax" wildcards:
? matches any single character
* matches a sequence of arbitrary characters
[abc] matches any of the characters listed inside the brackets
If multiple --search options are provided, a log message is shown if
it matches any of the provided search patterns. If the --search-and
option is used, that option's argument is combined with the pattern
from the previous --search or --search-and option, and a log message
is shown only if it matches the combined search pattern.
If --limit is used in combination with --search, --limit restricts the
number of log messages searched, rather than restricting the output
to a particular number of matching log messages.