Que signifient les codes de résultat dans SVN?

Translate

Que signifient les codes de résultat dans SVN? J'ai besoin d'une référence rapide.

This question and all comments follow the "Attribution Required."

Toutes les réponses

Translate

Pour plus de détails, consultez le SVNBook:"État des fichiers et répertoires de la copie de travail".

Les statuts communs:

U: Le fichier de travail a été mis à jour

G: Les modifications apportées au dépôt ont été automatiquement fusionnées dans la copie de travail

M: La copie de travail est modifiée

C: Ce fichier est en conflit avec la version du référentiel

?: Ce fichier n'est pas sous contrôle de version

!: Ce fichier est sous contrôle de version mais est manquant ou incomplet

A: Ce fichier sera ajouté au contrôle de version (après validation)

A+: Ce fichier sera déplacé (après validation)

D: Ce fichier sera supprimé (après validation)

S: Cela signifie que le fichier ou le répertoire a été basculé du chemin du reste de la copie de travail (à l'aide du commutateur svn) vers une branche

I: Ignoré

X: Définition externe

~: Type modifié

R: L'élément a été remplacé dans votre copie de travail. Cela signifie que la suppression du fichier a été planifiée, puis un nouveau fichier portant le même nom a été planifié pour être ajouté à sa place.

L: L'élément est verrouillé

E: L'élément existait, tel qu'il aurait été créé, par une mise à jour svn.

La source
Translate

Notez également qu'un code de résultat dans la deuxième colonne fait référence aux propriétés du fichier. Par exemple:

U   filename.1
 U  filename.2  
UU  filename.3

filename.1: le fichier a été mis à jour
filename.2: une ou plusieurs propriétés du fichier (telles que svn: keywords) a été mise à jour
filename.3: le fichier et ses propriétés ont été mis à jour

La source
Translate

Vous pouvez toujours obtenir une liste en exécutant:

svn status --help
La source
Translate

Je veux dire quelque chose sur le statut "G",

G: les modifications sur le repo ont été automatiquement fusionnées dans la copie de travail

Je pense que la définition ci-dessus n'est pas claire, elle peut générer un peu de confusion, car tous les fichiers sont automatiquement fusionnés dans la copie de travail, la bonne devrait être:

U = élément (U) mis à jour à la version du référentiel

G = modifications locales de l'élément mer (G) avec le référentiel

C = modifications locales de l'élément (C) en conflit avec le référentiel

D = élément (D) supprimé de la copie de travail

A = élément (A) ajouté à la copie de travail

La source
Translate

Il y a aussi un statut 'E'

E = Le fichier existait avant la mise à jour

Cela peut se produire si vous avez créé manuellement un dossier qui aurait été créé en effectuant une mise à jour.

La source
Translate

J'utilise généralement svn via une interface graphique, que ce soit mon IDE ou un client. À cause de cela, je ne me souviens jamais des codes lorsque je dois recourir à la ligne de commande.

Je trouve cette aide-mémoire d'une grande aide:Aide-mémoire Subversion

La source
Translate

Jetez un œil dans la référence du livre Subversion:"État des fichiers et répertoires de la copie de travail"

Fortement recommandé pour quiconque fait à peu près n'importe quoi avec SVN.

La source
Translate

Colonnes d'état SVN

$ svn status
L index.html

La sortie de la commande est divisée en six colonnes, mais ce n'est pas évident car parfois les colonnes sont vides. Il aurait peut-être été plus judicieux d'indiquer les colonnes vides avec des tirets, la manièrels -lfait, au lieu de rien. Ensuite, par exemple,L index.htmlressemblerait à--L--- index.html, ce qui rend évident que la seule information dont nous disposons se trouve dans la troisième colonne, celle sur le verrouillage. Quoi qu'il en soit, une fois que vous savez que cela commence à avoir plus de sens.

Première colonne du statut SVN: A, D, M, R, C, X, I,?,!, ~

La première colonne indique qu'un élément a été ajouté, supprimé ou autrement modifié.

   Aucune modification.

 A L'article est prévu pour l'ajout.

 D L'élément doit être supprimé.

 M L'élément a été modifié.

 R L'article a été remplacé dans votre copie de travail. Cela signifie que la suppression du fichier a été planifiée, puis un nouveau fichier portant le même nom a été planifié pour être ajouté à sa place.

 C Le contenu (par opposition aux propriétés) de l'élément est en conflit avec les mises à jour reçues du référentiel.

 X L'élément est lié à une définition externe.

 I L'élément est ignoré (par exemple avec la propriété svn: ignore).

 ? L'élément n'est pas sous contrôle de version.

 ! L'élément est manquant (par exemple, vous l'avez déplacé ou supprimé sans utiliser svn). Cela indique également qu'un répertoire est incomplet (une extraction ou une mise à jour a été interrompue).

 ~ L'élément est versionné comme un type d'objet (fichier, répertoire, lien), mais a été remplacé par un autre type d'objet.

Statut SVN deuxième colonne: M, C

La deuxième colonne indique l'état des propriétés d'un fichier ou d'un répertoire.

   Aucune modification.

 M Les propriétés de cet élément ont été modifiées.

 C Les propriétés de cet élément sont en conflit avec les mises à jour de propriété reçues du référentiel.

Statut SVN troisième colonne: L

La troisième colonne n'est remplie que si le répertoire de la copie de travail est verrouillé (un nettoyage svn devrait normalement suffire à l'effacer)

   L'élément n'est pas verrouillé.

 L L'élément est verrouillé.

Statut SVN quatrième colonne: +

La quatrième colonne est remplie uniquement si l'élément est prévu pour l'ajout avec l'historique.

   Pas d'historique programmé avec commit.

 + Historique programmé avec commit.

Statut SVN cinquième colonne: S

La cinquième colonne est remplie uniquement si la copie de travail de l'élément est commutée par rapport à son parent

   L'élément est un enfant de son répertoire parent.

 S L'élément est changé.

Statut SVN sixième colonne: K, O, T, B

La sixième colonne contient des informations de verrouillage.

   Lorsque –show-updates est utilisé, le fichier n'est pas verrouillé. Si –show-updates n'est pas utilisé, cela signifie simplement que le fichier n'est pas verrouillé dans cette copie de travail.

 K Le fichier est verrouillé dans cette copie de travail.

 O Le fichier est verrouillé par un autre utilisateur ou dans une autre copie de travail. Cela n'apparaît que lorsque –show-updates est utilisé.

 T Le fichier a été verrouillé dans cette copie de travail, mais le verrou a été volé et n'est pas valide. Le fichier est actuellement verrouillé dans le référentiel. Cela n'apparaît que lorsque –show-updates est utilisé.

 B Le fichier a été verrouillé dans cette copie de travail, mais le verrou a été rompu et n'est pas valide. Le fichier n'est plus verrouillé Cela n'apparaît que lorsque –show-updates est utilisé.

Statut SVN septième colonne: *

Les informations obsolètes apparaissent dans la septième colonne (uniquement si vous passez le commutateur –show-updates). C'est quelque chose que les nouveaux utilisateurs de SVN s'attendent à ce que la commande fasse, sans s'en rendre compte, comparez seulement l'état actuel du fichier avec les informations qu'il a récupérées sur le serveur lors de la dernière mise à jour.

   L'élément de votre copie de travail est à jour.

 * Une révision plus récente de l'élément existe sur le serveur.

La source
Translate

Chaque fois que vous n'avez pas accès à la documentation (SVNBook), tapez (Linux):

svn help status | grep \'\?\'
svn help status | grep \'\!\'
svn help status | grep \'\YOUR_SYMBOL_HERE\'

ou insérez la fonction suivante dans votre fichier ~ / .bashrc, comme ceci:

svncode() {
  symbol=$1
  [ $symbol ] &&  svn help status | grep \'$(echo $symbol)\' || \
  echo "usage: svncode <symbol>"
}

enter image description here

La source