svn_repos_recover
svn_update
Fonctions SVN
PHP Manual

# svn_status

(PECL svn:0.1-0.2)

svn_status — Récupère le statut des fichiers et des dossiers de la copie de travail

### Description

array svn_status ( string `$path` [, bool `$recursive` [, bool `$get_all` [, bool `$update` [, bool `$no_ignore` ]]]] )

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.

### 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__).

`recursive`

  Si l'on doit ou non récupérer récursivement les statuts. Par défaut, vaut `TRUE`.

`get_all`

  Si l'on doit ou non retourner tous les éléments, d'un point de vue des modifications du statut. Par défaut, vaut `FALSE`.

`update`

  Si l'on doit ou non retourner les informations depuis le serveur suivant si la copie de travail est à jour ou non (les entrées seront ajoutées pour les éléments qui sont à jour). Par défaut, vaut `FALSE`.

`no_ignore`

  Si l'on doit ou non ignorer les propriétés svn:ignore lors de l'analyse des nouveaux fichiers. Par défaut, vaut `FALSE`.

### Valeurs de retour

Retourne un tableau indexé numériquement de tableaux associatifs détaillant le statut des éléments du dépôt :

    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 dépôt. 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. 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 serveur 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 dépôt.
url
  URL de l'élément dans le dépôt.
repos
  URL de base du dépôt.
revision
  Version 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 a ajouté
  define('svn_wc_schedule_delete', 2); // élément a supprimé
  define('svn_wc_schedule_replace', 3); // élément a ajouté et effacé
  }
  ?>`
deleted
  Si l'élément a été supprimé, mais les versions parents 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
  Version de la dernière validation. (Non-Affecté par le paramètre `update` ).
cmt_author
  Nom de l'auteur de la dernière validation. (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

Avertissement

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.

### 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()
- svn_log()
- » Documentation SVN de la commande status

svn_repos_recover
svn_update
Fonctions SVN
PHP Manual