(PECL svn >= 0.1.0)
svn_status — Récupère le statut des fichiers et des dossiers de la copie de travail
$path
[, int $flags
= 0
] )Retourne le statut des fichiers et des dossiers de la copie de travail, en fournissant les modifications, les ajouts, les suppressions, ainsi que les autres modifications des éléments de la copie de travail.
path
Chemin local vers le fichier ou le dossier dont on souhaite récupérer le statut.
Note: Les chemins relatifs peuvent être résolus si le dossier de travail courant est l'un de ceux qui contiennent le binaire PHP. Pour utiliser le dossier de travail, utilisez la fonction realpath(), ou l'instruction dirname(__FILE__).
flags
Toute combinaison de SVN_NON_RECURSIVE
,
SVN_ALL
(indépendamment du statut de modification),
SVN_SHOW_UPDATES
(les entrées seront ajoutées pour les éléments
qui ne sont pas à jour), SVN_NO_IGNORE
(néglige les propriétés
svn:ignore lors de l'analyse des nouveaux fichiers)
et SVN_IGNORE_EXTERNALS
.
Retourne un tableau indexé numériquement de tableaux associatifs détaillant le statut des éléments du référentiel :
Array ( [0] => Array ( // information sur l'élément ) [1] => ... )
L'information sur un élément est un tableau associatif qui peut contenir les clés suivantes :
update
est défini à TRUE
.
Référez-vous aux
constantes de statut pour les valeurs possibles.
update
est défini à TRUE
. Référez-vous aux
constantes de statut pour les valeurs possibles.
TRUE
.)
TRUE
.)
TRUE
)
Ces clés ne sont définies que si l'élément est versionné :
<?php
if (!defined('svn_wc_schedule_normal')) {
define('svn_wc_schedule_normal', 0); // rien de spécial
define('svn_wc_schedule_add', 1); // élément à ajouté
define('svn_wc_schedule_delete', 2); // élément à supprimé
define('svn_wc_schedule_replace', 3); // élément à ajouté et effacé
}
?>
TRUE
.)
TRUE
.)
TRUE
.)
update
).
update
).
update
).
Cette fonction est EXPERIMENTALE. Cela signifie que le comportement de cette fonction, son nom et, concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS ! Soyez-en conscient, et utilisez cette fonction à vos risques et périls.
Exemple #1 Exemple d'utilisation
Cet exemple montre une utilisation basique de cette fonction.
<?php
print_r(svn_status(realpath('wc')));
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
Array ( [0] => Array ( [path] => /home/bob/wc/sandwich.txt [text_status] => 8 // l'élément a été modifié [repos_text_status] => 1 // Aucune information disponible, utilisez update [prop_status] => 3 // aucun changement [repos_prop_status] => 1 // Aucune information disponible, utilisez update [name] => sandwich.txt [url] => http://www.example.com/svnroot/deli/trunk/sandwich.txt [repos] => http://www.example.com/svnroot/ [revision] => 123 [kind] => 1 // fichier [schedule] => 0 // aucune action de prévue [cmt_date] => 1165543135 [cmt_rev] => 120 [cmt_author] => Alice [prop_time] => 1180201728 [text_time] => 1180201729 ) )