(PECL svn >= 0.1.0)
svn_log — Devuelve el log histórico de mensajes de un repositorio URL
$repos_url
[, int $start_revision
[, int $end_revision
[, int $limit
= 0
[, int $flags
= SVN_DISCOVER_CHANGED_PATHS | SVN_STOP_ON_COPY
]]]] ) : array
svn_log() devuelve el histórico completo de un elemento del repositorio URL
repos_url
, o el histórico de una revisión específica
si start_revision
se ha especificado. Esta función es equivalente
a svn log --verbose -r $start_revision $repos_url
.
repos_url
Repositorio URL del elemento del que se obtendrá el log histórico.
start_revision
Número de revisión del primer log a obtener. Usar
SVN_REVISION_HEAD
para obtener el log de
la revisión más reciente.
end_revision
Número de revisión del último log a obtener. Por defecto es
start_revision
si se especifica, o
SVN_REVISION_INITIAL
en caso contrario.
limit
Número de logs a obtener.
flags
Cualquier combinación de SVN_OMIT_MESSAGES
,
SVN_DISCOVER_CHANGED_PATHS
y
SVN_STOP_ON_COPY
.
En caso de éxito, esta función devuelve un array con el siguiente formato :
[0] => Array, ordenado mostrando la revisión más reciente (la mayor) primero ( [rev] => integer número de revisión [author] => string nombre del autor [msg] => string log del mensaje [date] => string fecha formateada por ISO 8601, p.e. date('c') [paths] => Array, descripción de los ficheros cambiados ( [0] => Array ( [action] => string letra que indica el cambio [path] => path absoluto del repositorio de un fichero cambiado ) [1] => ... ) ) [1] => ...
Nota:
La salida siempre será un array de arrays indexado numéricamente, incluso cuando no haya ninguno o sólo un log de mensaje(s).
El valor de action es un subconjunto de » con el estado de salida en la primer columna, donde los valores posibles son:
Letter | Description |
---|---|
M | Elemento/propiedad fue modificada |
A | Elemento fue añadido |
D | Elemento fue borrado |
R | Elemento fue reemplazado |
Si no se hizo ningún cambio al elemento, se devolverá un array vacío.
Esta función ha sido declarada EXPERIMENTAL. Su funcionamiento, nombre y la documentación que le acompaña puede cambiar sin previo aviso en futuras versiones de PHP. Utilícela bajo su propia responsabilidad.
Ejemplo #1 svn_log() example
<?php
print_r( svn_log('http://www.example.com/', 23) );
?>
El resultado del ejemplo sería algo similar a:
Array ( [0] => Array ( [rev] => 23 [author] => 'joe' [msg] => 'Add cheese and salami to our sandwich.' [date] => '2007-04-06T16:00:27-04:00' [paths] => Array ( [0] => Array ( [action] => 'M' [path] => '/sandwich.txt' ) ) ) )