Extrayendo información de svn log

Por lo general, cuando hago un svn log -v , obtengo la respuesta en el formatting:

 ------------------------------------------------------------------------ r8223 | neo | 2013-04-23 10:51:46 +0200 (Tue, 23 Apr 2013) | 1 line Changed paths: M /dir/myfile.py mycomment: validation changes for customers ------------------------------------------------------------------------ 

Pero digamos, quiero enumerar todos los numbers de revisión para las comprobaciones de svn, que tienen "cambios de validation" en sus comentarios. ¿Cómo puedo listr eso?

svn log -l 1000 -v | grep "cambios de validation" | awk '{print $ somevalue}' tampoco ayuda, ¡ya que solo forma parte del comentario!

El cliente de command-line de Subversion 1.8+ le permite usar nuevas --search y --search-and opciones con svn log command svn log .

El command no realiza búsquedas de text completo dentro de un repository y considera solo los siguientes datos:

  • autor de la revisión ( svn:author propiedad no versionada del svn:author ),
  • date ( svn:date propiedad no versionada),
  • text de post de logging ( svn:log propiedad no versionada de svn:log ),
  • list de routes modificadas (es decir, routes afectadas por la revisión en particular).

Aquí está la página de ayuda sobre estas nuevas opciones de búsqueda:

  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. 

Entonces en tu caso el command podría ser:

svn log -v --search "validation changes" URL-TO-REPOSITORY | awk '{print $somevalue}'