temporarily - tortoise svn client relocate
Estado "S" en Subversion (13)
En algún momento, todos los archivos en mi copia de trabajo se marcaron con el símbolo "S" como se muestra a continuación:
$ svn st
M S AclController.php
S InstallationController.php
S CustomerController.php
S RedirController.php
S IndexController.php
S LoginController.php
S OrderController.php
S ProductController.php
S SelfInstallController.php
S SelfcareController.php
Curiosamente, solo ocurre en esta copia de trabajo particular: cuando pago el proyecto en el nuevo directorio, no muestra las marcas "S".
¿Cómo deshacerse de estos molestos símbolos "S"? Disminuye significativamente la claridad del estado de WC.
Actualización: cambio de vez en cuando con la sintaxis estándar del svn switch
. Nunca causó que este símbolo "S" apareciera hasta hace poco. El comando utilizado para cambiar fue:
svn switch svn+ssh://xxxxxx/subversion/xxxxxxx/releases/1.0.16 .
¿Hay alguna manera de borrar la bandera "S"?
En caso de que alguien llegue tarde buscando la respuesta (que se indica correctamente más arriba), creo que una posible causa de esta situación es un ''svn switch'' en un directorio principal que falla (como en el caso de un archivo local no asignado con el mismo nombre y ninguna opción de Fuerza), dejando todos los archivos posteriores a la falla ''sin cambio''.
Es por eso que (asumiendo que el problema original sea corregido posteriormente) un "interruptor de svn" subsecuente otra vez en el mismo directorio padre de hecho cambiará los archivos restantes no conmutados a una nueva ruta de repositorio.
En mi caso, esto sucede cuando se interrumpe el comando "svn switch" y para resolverlo con TortoriseSVN, hago clic derecho en el archivo y selecciono cambiar de nuevo a parent
Esto generalmente es causado por una interrupción cuando se cambian las ramas.
Cambie a una rama diferente y luego vuelva a la rama que realmente desea.
svn switch some_other_branch_url
svn switch desired_branch_url
Esto significa que ha cambiado de una copia de trabajo a otra, por ejemplo, ha comprobado una copia de trabajo y luego la ha cambiado para compararla con una rama de código. Eche un vistazo al libro SVN para obtener detalles sobre cómo deshacer esto.
Hay otra forma en que se puede lograr este estado, lo que con suerte salvará a alguien de rastrearlo.
Desempaqué una biblioteca externa en mi raíz SVN, y resulta que el autor de terceros accidentalmente ha incluido su propia carpeta .svn en una de sus carpetas. Esto, por supuesto, sobrescribe nuestra propia y correcta carpeta de subversión y tiene el mismo efecto que se describe en otra parte de esta página: parece que una carpeta se ha cambiado inesperadamente a otra sucursal.
Le sugiero que lea su ayuda oficial, intente:
svn st --help
o
svn st --help | grep S
''S'' the item has a Switched URL relative to the parent
Si llama a ''svn info'' en el directorio mismo y en (uno de) los archivos dentro, obtendrá dos URL diferentes.
Obtiene el estado "S" si la URL de un archivo / directorio no coincide con la URL del padre seguido del nombre del archivo.
¿Puedes publicar la url del padre y uno de los nodos secundarios? (Anonimizando la URL donde corresponda)
Significa que los archivos provienen de una ubicación diferente en el repositorio de subversión que el directorio que los contiene. La solución es cambiar toda la copia de trabajo a la misma ubicación. Consulte las two sections en el libro de subversión para obtener detalles sobre cómo invocar el comando.
Solo un comentario: Obtuve el mismo símbolo S cuando revisé un directorio eliminado de la misma ubicación en el repositorio pero usando una URL diferente , es decir, usando protocolos distintos para pagar, como ''svn checkout svn + ssh: // user @ scm .gforge ... ''contra'' svn checkout --username https: //scm.gforge .... ''. Lo resolví revisándolo nuevamente usando la misma URL que utilicé para el primer pago.
Tuve el estado " S " al cambiar de troncal (r100) a alguna rama (r50). Obtuve el error:
svn: Failed to add file ''web/.htaccess'': an unversioned file of the same name already exists
Todos los subdires de la web / fueron '' S '' marcados.
La causa: había eliminado .htaccess a svn: ignóralo (r100), luego lo había creado nuevamente (no versionado e ignorado). La sucursal (r50) aún tenía acceso web / .htaccess en el repositorio.
La solución :
mv web/.htaccess ../../
svn switch back to trunk
svn switch to branch again
Todo está bien.
Tuve este problema con un directorio que comprometí con éxito a SVN. La solución para mí fue borrarlo localmente y luego actualizarlo. No pude ver ninguna diferencia, pero el archivo .svn se corrigió por cualquier motivo (no más S).
Una solución simple para deshacerse de la ''S'' cuando emite
svn status
es simplemente ir al directorio que está marcado con ''S'' y eliminar el directorio oculto .svn:
rm -rf .svn
Después, las fuentes aparecen marcadas con ''?'' y puedes agregarlos fácilmente:
svn agregar ruta / a / recurso
Si usó "svn switch" en su copia de trabajo que podría explicarlo?