svn_status
(PECL svn >= 0.1.0)
svn_status — Récupère le statut des fichiers et des dossiers de la copie de travail
Description
$path
[, int $flags
= 0
] ) : arrayRetourne 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.
Liste de paramètres
-
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) etSvn::IGNORE_EXTERNALS
.
Valeurs de retour
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 :
- path
- Chemin vers le fichier/dossier de cette entrée sur le système de fichiers local.
- text_status
- Statut du texte de l'élément. Référez-vous aux constantes de statut pour les valeurs possibles.
- repos_text_status
-
Statut du texte de l'élément dans le référentiel. Ne survient que si
update
est défini àTRUE
. Référez-vous aux constantes de statut pour les valeurs possibles. - prop_status
- Statut de la propriété de l'élément. Référez-vous aux constantes de statut pour les valeurs possibles.
- repos_prop_status
-
Statut de la propriété de l'élément dans le référentiel. Ne survient que si
update
est défini àTRUE
. Référez-vous aux constantes de statut pour les valeurs possibles. - locked
-
Si l'élément est verrouillé. (Définit que si
TRUE
.) - copied
-
Si l'élément a été copié ou non (prévu pour l'ajout avec la journalisation).
(Définit que si
TRUE
.) - switched
-
Si l'élément a changé de référentiel de référence,
en utilisant la commande switch.
(Définit que si
TRUE
)
Ces clés ne sont définies que si l'élément est versionné :
- name
- Nom de base de l'élément dans le référentiel.
- url
- URL de l'élément dans le référentiel.
- repos
- URL de base du référentiel.
- revision
- Révision de l'élément dans la copie de travail.
- kind
- Type de l'élément, i.e. fichier ou dossier. Référez-vous aux constantes de type pour les valeurs possibles.
- schedule
-
Action prévue pour l'élément, i.e. ajout ou suppression.
Les constantes pour ces nombres magiques ne sont pas disponibles,
elles peuvent être émulées en utilisant :
<?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é
}
?> - deleted
-
Si l'élément a été supprimé, mais les révisions parentes existent toujours
(Définit que si
TRUE
.) - absent
-
Si l'élément est absent, mais que Subversion sait qu'il devrait se
trouver ici. (Définit que si
TRUE
.) - incomplete
-
Si l'entrée du fichier pour un dossier est incomplète.
(Définit que si
TRUE
.) - cmt_date
-
Timestamp Unix de la date de la dernière validation.
(Non-Affecté par le paramètre
update
). - cmt_rev
-
Révision de la dernière livraison. (Non-Affecté par le paramètre
update
). - cmt_author
-
Nom de l'auteur de la dernière livraison. (Non-Affecté par le
paramètre
update
). - prop_time
- Timestamp Unix représentant la date/heure de la dernière mise à jour des propriétés.
- text_time
- Timestamp Unix représentant la date/heure de la dernière mise à jour du texte.
Notes
Cette fonction est EXPERIMENTALE. Le comportement de cette fonction, son nom, et toute la documentation autour de cette fonction peut changer sans préavis dans une prochaine version de PHP. Cette fonction doit être utilisée à vos risques et périls.
Exemples
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 ) )
Voir aussi
- svn_update() - Met à jour la copie de travail
- svn_log() - Récupère le message d'historisation d'une URL du référentiel
- » Documentation SVN de la commande "svn status"
Version en cache
22/11/2024 22:41:17 Cette version de la page est en cache (à la date du 22/11/2024 22:41:17) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-svn-status.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.