(PECL svn >= 0.1.0)
svn_status — Devuelve el estado de la copia de trabajo de los ficheros y directorios
$path
[, int $flags = 0
] ) : arrayDevuelve el estado de la copia de trabajo de los ficheros y directorios, dando las modificaciones, adiciones, borrados y otros cambios a los elementos de la copia de trabajo.
pathPath local al fichero o directorio del que se obtendrá el estado.
Nota: Las rutas relativas se resolverán como si el directorio de trabajo actual es el que contiene el binario de PHP. Para utilizar el directorio de trabajo que contiene el script a llamar, use realpath() o dirname(__FILE__).
flags
Cualquier combinación de SVN_NON_RECURSIVE,
SVN_ALL (independientemente del estado de modificación),
SVN_SHOW_UPDATES (se añadirán entradas para los elementos
que estan desactualizados), SVN_NO_IGNORE (ignorar
svn:ignore las propiedades cuando se busquen nuevos ficheros)
y SVN_IGNORE_EXTERNALS.
Devuelve un array de arrays asociativos indexado numéricamente, detallando el estado de los elementos del repositorio:
Array (
[0] => Array (
// información del elemento
)
[1] => ...
)
La información del elemento es un array asociativo que puede contener las siguientes claves:
update se definió a TRUE.
Referirse a constantes de estado para posibles valores.
update se definió a TRUE. Referirse a constantes de estado para posibles valores.
TRUE.)
TRUE.)
TRUE)
Estas claves sólo estan definidas si el elemento está versionado:
<?php
if (!defined('svn_wc_schedule_normal')) {
define('svn_wc_schedule_normal', 0); // nada especial
define('svn_wc_schedule_add', 1); // elemento será añadido
define('svn_wc_schedule_delete', 2); // elemento será eliminado
define('svn_wc_schedule_replace', 3); // elemento será reemplazado
}
?>
TRUE.)
TRUE.)
TRUE.)
update.)
update.)
update.)
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 Ejemplo básico
Este ejemplo muestra un uso básico, teórico de esta función.
<?php
print_r(svn_status(realpath('wc')));
?>
El resultado del ejemplo sería algo similar a:
Array (
[0] => Array (
[path] => /home/bob/wc/sandwich.txt
[text_status] => 8 // elemento que fue modificado
[repos_text_status] => 1 // sin información disponible, usar update
[prop_status] => 3 // sin cambios
[repos_prop_status] => 1 // sin información disponible, usar update
[name] => sandwich.txt
[url] => http://www.example.com/svnroot/deli/trunk/sandwich.txt
[repos] => http://www.example.com/svnroot/
[revision] => 123
[kind] => 1 // fichero
[schedule] => 0 // sin acciones especiales planificadas
[cmt_date] => 1165543135
[cmt_rev] => 120
[cmt_author] => Alice
[prop_time] => 1180201728
[text_time] => 1180201729
)
)