Pregunta

¿Qué significan los códigos de resultado en SVN?Necesito una referencia rápida.

¿Fue útil?

Solución

Para obtener detalles adicionales, consulte el SVNBook: "Estado de los archivos y directorios de la copia de trabajo".

Los estados comunes:

Ud.:Se actualizó el archivo de trabajo

GRAMO:Los cambios en el repositorio se fusionaron automáticamente en la copia de trabajo.

METRO:Se modifica la copia de trabajo

C:Este archivo entra en conflicto con la versión en el repositorio.

?:Este archivo no está bajo control de versiones.

!:Este archivo está bajo control de versiones pero falta o está incompleto

A:Este archivo se agregará al control de versiones (después de la confirmación)

A+:Este archivo se moverá (después de la confirmación)

D:Este archivo será eliminado (después de la confirmación)

S:Esto significa que el archivo o directorio se ha cambiado de la ruta del resto de la copia de trabajo (usando el conmutador SVN) a una rama

I:ignorado

X:Definición externa

~:Tipo cambiado

R:El artículo ha sido reemplazado en su copia de trabajo.Esto significa que se programó la eliminación del archivo y luego se programó la adición de un nuevo archivo con el mismo nombre en su lugar.

l :El artículo está bloqueado

mi:El elemento existía, tal como habría sido creado, mediante una actualización de svn.

Otros consejos

Tenga en cuenta también que un código de resultado en la segunda columna hace referencia a las propiedades del archivo.Por ejemplo:

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

nombre de archivo.1:el archivo fue actualizado
nombre de archivo.2:se actualizó una propiedad o propiedades en el archivo (como svn:keywords)
nombre de archivo.3:tanto el archivo como sus propiedades fueron actualizados

Siempre puedes obtener una lista ejecutando:

svn status --help

También hay un estado 'E'

E = El archivo existía antes de la actualización

Esto puede suceder si ha creado manualmente una carpeta que se habría creado al realizar una actualización.

Quiero decir algo sobre el estado "G",

GRAMO:Los cambios en el repositorio se fusionaron automáticamente en la copia de trabajo.

Creo que la definición anterior no es clara, puede generar un poco de confusión, porque todos los archivos se fusionan automáticamente en una copia de trabajo, la correcta debería ser:

U = elemento (U) actualizado a la versión del repositorio

G = cambios locales del elemento fusionados (G) con el repositorio

C = cambios locales del elemento (C) en conflicto con el repositorio

D = elemento (D) eliminado de la copia de trabajo

A = elemento (A) agregado a la copia de trabajo

Normalmente uso svn a través de una interfaz gráfica de usuario, ya sea mi IDE o un cliente.Por eso, nunca puedo recordar los códigos cuando tengo que recurrir a la línea de comando.

Esta hoja de referencia me resulta de gran ayuda:Hoja de trucos de subversión

Eche un vistazo a la referencia del Libro de Subversion: "Estado de los archivos y directorios de la copia de trabajo"

Altamente recomendado para cualquiera que haga prácticamente cualquier cosa con SVN.

Columnas de estado SVN

$ svn status
L index.html

La salida del comando se divide en seis columnas, pero eso no es obvio porque a veces las columnas están vacías.Quizás hubiera tenido más sentido indicar las columnas vacías con guiones, la forma en que ls -l hace, en lugar de nada.Entonces, por ejemplo, L index.html se vería como --L--- index.html, lo que hace obvio que la única información que tenemos está en la tercera columna la del bloqueo.De todos modos, una vez que lo sabes, empieza a tener más sentido.

Primera columna del estado SVN:A, D, M, R, C, X, I, ?, !, ~

La primera columna indica que se agregó, eliminó o modificó un elemento.

    Sin modificaciones.

 A  El artículo está programado para ser agregado.

 D  El elemento está programado para su eliminación.

 M  El artículo ha sido modificado.

 R  El artículo ha sido reemplazado en su copia de trabajo.Esto significa que se programó la eliminación del archivo y luego se programó la adición de un nuevo archivo con el mismo nombre en su lugar.

 C  El contenido (a diferencia de las propiedades) del elemento entra en conflicto con las actualizaciones recibidas del repositorio.

 X  El elemento está relacionado con una definición externa.

 I  Se ignora el elemento (p. ej.con la propiedad svn:ignore).

 ?  El artículo no está bajo control de versiones.

 !  Falta un artículo (p. ej.lo moviste o lo eliminaste sin usar svn).Esto también indica que un directorio está incompleto (se interrumpió una extracción o actualización).

 ~  El elemento está versionado como un tipo de objeto (archivo, directorio, enlace), pero ha sido reemplazado por un tipo diferente de objeto.

Segunda columna del estado SVN:M, C

La segunda columna indica el estado de las propiedades de un archivo o directorio.

    Sin modificaciones.

 M  Se han modificado las propiedades de este elemento.

 C  Las propiedades de este elemento están en conflicto con las actualizaciones de propiedades recibidas del repositorio.

Estado SVN tercera columna:l

La tercera columna se completa solo si el directorio de la copia de trabajo está bloqueado (una limpieza svn normalmente debería ser suficiente para borrarlo)

    El artículo no está bloqueado.

 L  El artículo está bloqueado.

Estado SVN cuarta columna:+

La cuarta columna se completa solo si el elemento está programado para agregarse al historial.

    No hay historial programado con confirmación.

 +  Historial programado con compromiso.

Estado SVN quinta columna:S

La quinta columna se completa solo si la copia de trabajo del elemento se cambia en relación con su padre.

    El elemento es hijo de su directorio principal.

 S  El artículo está cambiado.

Estado SVN sexta columna:K, O, T, B

La sexta columna se completa con información de bloqueo.

    Cuando se utiliza –show-updates, el archivo no está bloqueado.Si no se utiliza –show-updates, esto simplemente significa que el archivo no está bloqueado en esta copia de trabajo.

 K  El archivo está bloqueado en esta copia de trabajo.

 O  El archivo está bloqueado por otro usuario o en otra copia de trabajo.Esto solo aparece cuando se usa –show-updates.

 T  El archivo fue bloqueado en esta copia de trabajo, pero el bloqueo fue robado y no es válido.El archivo está actualmente bloqueado en el repositorio.Esto solo aparece cuando se usa –show-updates.-

 B  El archivo estaba bloqueado en esta copia de trabajo, pero el bloqueo se rompió y no es válido.El archivo ya no está bloqueado. Esto solo aparece cuando se usa –show-updates.

Estado SVN séptima columna:*

La información desactualizada aparece en la séptima columna (solo si pasa el interruptor –show-updates).Esto es algo que las personas que son nuevas en SVN esperan que haga el comando, sin darse cuenta de que solo compara el estado actual del archivo con la información que obtuvo del servidor en la última actualización.

    El elemento de su copia de trabajo está actualizado.

 *  Existe una revisión más reciente del artículo en el servidor.

Siempre que no tengas acceso a la documentación (SVNLibro), escriba (Linux):

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

o inserte la siguiente función en su archivo ~/.bashrc, así:

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

enter image description here

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top