usar tutorial tortoise subversion como svn subclipse

tutorial - ¿Qué significa el código de estado E en SVN?



svn windows (2)

Acabo de recibir el código de estado E de SVN por primera vez. Qué significa eso? La documentación de update dice que significa "Existido", pero no da más detalles que eso.

Alternativamente, ¿qué es un "camino que obstruye"? El archivo de ayuda largo indica que "las rutas de obstrucción se informan en la primera columna con el código ''E''".

Algunos antecedentes: eliminé un archivo de mi copia de trabajo que no debería haber eliminado. La actualización desde SVN no lo restauró, así que creé un nuevo archivo con el mismo nombre de archivo y copié y pegué la copia de repositorio del archivo en él.

Luego lo agregué al control de versión, pero eso le dio el "archivo de versión que debe agregarse al estado del repositorio remoto", no el estado de "no cambios locales".

Usando Subclipse, seleccioné Reemplazar con > Últimos del repositorio en la carpeta principal, y esto sucedió:

revert -N C:/foo/Bar.java Reverted C:/foo/Bar.java update C:/foo/Bar.java -r HEAD --force E C:/foo/Bar.java Updated to revision 396. ===== File Statistics: ===== Existing: 1


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

http://plind.dk/2009/06/26/svn-status-cheatsheet/

"Las rutas de obstrucción sin versión en la copia de trabajo no causan automáticamente un error si la actualización intenta agregar la misma ruta. Si la ruta de obstrucción es del mismo tipo (archivo o directorio) que la ruta correspondiente en el repositorio, se versiona pero su contenido se dejan ''tal como están'' en la copia de trabajo. Esto significa que los hijos no versionados de un directorio obstruyendo también pueden obstruir y ser versionados. Para los archivos, cualquier diferencia de contenido entre la obstrucción y el repositorio se trata como una modificación local de la copia de trabajo. Todas las propiedades del repositorio se aplican a la ruta de obstrucción. Las rutas de obstrucción se informan en la primera columna con el código ''E''.

Use la opción --set-depth para establecer una nueva profundidad de copia de trabajo en los objetivos de esta operación ".


Una "ruta de obstrucción" se refiere a un archivo o carpeta existente no versionado en una ruta donde el comando de actualización necesita copiar un archivo o carpeta versionado .

El estado E solo aparece cuando se usa la --force , sin la marca la actualización simplemente fallará. Con la bandera, deja el archivo solo y le permite decidir qué hacer con él.

Lo desconcertante de esta situación es cómo terminó pensando que el archivo se eliminó inmediatamente después de una reversión exitosa.

Ref: svn help update

Si la ruta de obstrucción es del mismo tipo (archivo o directorio) que la ruta correspondiente en el repositorio, se convierte en una versión pero su contenido se deja ''tal cual'' en la copia de trabajo.