svn log — Muestra los mensajes de los informes de cambios.
El objetivo por defecto es la ruta de su directorio
actual. Si no proporciona parámetro alguno, svn
log muestra los mensajes de los informes de
cambios de todos los ficheros y directorios dentro del
(e incluyendo) directorio actual de trabajo en su copia
local. Puede refinar los resultados especificando una
ruta, una o más revisiones, o cualquier combinación de
ambas. El rango de revisión por defecto para una ruta
local es BASE:1
.
Si especifica una URL sola, entonces imprime los
mensajes de los informes de cambios para todo lo
que contenga esa URL. Si añade rutas tras la URL,
sólo los mensajes de esas rutas bajo esa URL serán
mostrados. El rango de revisión por defecto de una URL
es HEAD:1
.
Con --verbose
, svn
log también mostrará todas las
rutas afectadas por cada mensaje de informe de
cambios. Con --quiet
, svn
log no mostrará el cuerpo del mensaje
del informe de cambios (esto es compatible con
--verbose
).
Cada mensaje de informe de cambios es impreso una
única vez, incluso si solicitó de forma explícita
más de una ruta afectadas por la misma revisión. Por
defecto se sigue la historia de copiado de los ficheros.
Use --stop-on-copy
para desactivar este
comportamiento, lo cual puede ser útil para encontrar
puntos de creación de ramas.
--revision (-r) REV --quiet (-q) --verbose (-v) --targets FILENAME --stop-on-copy --incremental --xml --username USER --password PASS --no-auth-cache --non-interactive --config-dir DIR
Puede ver los mensajes de informes de cambios para todas las rutas que fueron modificadas en su copia local ejecutando svn log:
$ svn log ------------------------------------------------------------------------ r20 | harry | 2003-01-17 22:56:19 -0600 (Fri, 17 Jan 2003) | 1 line Tweak. ------------------------------------------------------------------------ r17 | sally | 2003-01-16 23:21:19 -0600 (Thu, 16 Jan 2003) | 2 lines …
Examinar todos los mensajes de informes de cambios para un fichero particular de su copia local de trabajo:
$ svn log foo.c ------------------------------------------------------------------------ r32 | sally | 2003-01-13 00:43:13 -0600 (Mon, 13 Jan 2003) | 1 line Added defines. ------------------------------------------------------------------------ r28 | sally | 2003-01-07 21:48:33 -0600 (Tue, 07 Jan 2003) | 3 lines …
Si no tiene a mano una copia local, puede obtener los mensajes de informes de cambios a partir de una URL:
$ svn log http://svn.red-bean.com/repos/test/foo.c ------------------------------------------------------------------------ r32 | sally | 2003-01-13 00:43:13 -0600 (Mon, 13 Jan 2003) | 1 line Added defines. ------------------------------------------------------------------------ r28 | sally | 2003-01-07 21:48:33 -0600 (Tue, 07 Jan 2003) | 3 lines …
Si quiere usar varias rutas distintas bajo una
misma URL, puede usar la sintaxis URL
[PATH...]
.
$ svn log http://svn.red-bean.com/repos/test/ foo.c bar.c ------------------------------------------------------------------------ r32 | sally | 2003-01-13 00:43:13 -0600 (Mon, 13 Jan 2003) | 1 line Added defines. ------------------------------------------------------------------------ r31 | harry | 2003-01-10 12:25:08 -0600 (Fri, 10 Jan 2003) | 1 line Added new file bar.c ------------------------------------------------------------------------ r28 | sally | 2003-01-07 21:48:33 -0600 (Tue, 07 Jan 2003) | 3 lines …
Eso es igual que poner de forma explícita ambas URLs en la línea de comando:
$ svn log http://svn.red-bean.com/repos/test/foo.c \ http://svn.red-bean.com/repos/test/bar.c …
Cuando concatene los resultados de múltiples llamadas
al comando log, quizás desee usar el parámetro
--incremental
. svn
log normalmente imprime una línea de guiones
al comienzo de cada mensaje de informe de cambios, entre
mensajes, y después el último. Si ejecuta svn
log sobre un rango de dos revisiones, obtendría
esto:
$ svn log -r 14:15 ------------------------------------------------------------------------ r14 | ... ------------------------------------------------------------------------ r15 | ... ------------------------------------------------------------------------
No obstante, si quisiese recoger dos mensajes de informes de cambios no secuenciales en un mismo fichero, podría hacer algo como esto:
$ svn log -r 14 > mylog $ svn log -r 19 >> mylog $ svn log -r 27 >> mylog $ cat mylog ------------------------------------------------------------------------ r14 | ... ------------------------------------------------------------------------ ------------------------------------------------------------------------ r19 | ... ------------------------------------------------------------------------ ------------------------------------------------------------------------ r27 | ... ------------------------------------------------------------------------
Puede evitar la duplicidad de líneas de guiones en la salida usando el parámetro incremental:
$ svn log --incremental -r 14 > mylog $ svn log --incremental -r 19 >> mylog $ svn log --incremental -r 27 >> mylog $ cat mylog ------------------------------------------------------------------------ r14 | ... ------------------------------------------------------------------------ r19 | ... ------------------------------------------------------------------------ r27 | ...
El parámetro --incremental
proporciona un control de la salida similar cuando usa
el parámetro --xml
.
Sugerencia | |
---|---|
Si ejecuta svn log sobre una ruta específica e indica una revisión específica pero no obtiene ninguna salida en absoluto $ svn log -r 20 http://svn.red-bean.com/untouched.txt ------------------------------------------------------------------------ Eso sólo significa que esa ruta no fue modificada en esa revisión. Si ejecuta estos comandos desde la raíz del repositorio, o sabe qué fichero cambió en aquella revisión, puede especificarlo de forma explícita: $ svn log -r 20 touched.txt ------------------------------------------------------------------------ r20 | sally | 2003-01-17 22:56:19 -0600 (Fri, 17 Jan 2003) | 1 line Made a change. ------------------------------------------------------------------------ |