2010-11-03 19 views
6

estaba haciendo una actualización de svn, y un par de carpetas se obstruyeron de repente, y la limpieza fue inútil: informó bloqueos que no pude encontrar o liberar. Terminé borrando las carpetas ofensivas y la limpieza funcionó.tortoisesvn estado: obstruido

Creo que entiendo que SVN no era capaz de comparar las subcarpetas o algo ...

mi pregunta es: ¿cómo llegaron de esa manera; ¿Es un cambio local lo que lo causó, o podría haber sido otro compañero de equipo que cometió algo? ¿mi cliente svn está desactualizado?

Respuesta

4

Es muy probable que no haya tenido nada que ver con que otro compañero de equipo haya cometido algo en el repositorio SVN que afecte su copia de trabajo.

El trabajo copia una gran innovación de Subversion, pero a veces solo se desglosan del uso y abuso y se requiere una nueva verificación. Esto puede agravarse cuando tiene cambios locales.

Ahora las obstrucciones pueden ser causadas por un par de cosas. En primer lugar, la copia de trabajo simplemente se acerca. Está roto, la limpieza no lo arreglará. En segundo lugar, podría obstruirse porque tiene otra ventana, aplicación o proceso que tiene una retención en un archivo o directorio que está intentando comprometer. Esto es especialmente común con Windows y TortoiseSVN.

¿Estás seguro de que no tienes ventanas de línea de comandos, otras aplicaciones o incluso ventanas de Windows Explorer apuntadas a esos directorios?

+0

supongo que muy fácilmente podría haber tenido una ventana del explorador abierta en un subdirectorio. Lo tendré en cuenta para la próxima vez. quizás incluso un reinicio de la máquina de Windows podría limpiar cualquier bloqueo/retención del sistema. gracias – changokun

1

Vi esto ayer en una máquina cliente que intentaba usar una versión 1.4.x de TortoiseSVN contra mi servidor 1.6.x. Estaba teniendo problemas en grandes compromisos, y eventualmente fallaría. Dejó la copia de trabajo en un estado desordenado e incapaz de comprometerse, incluso después de una limpieza.

La instalación de la última versión lo solucionó todo. (Todavía era necesario soplar la copia de trabajo obstruida y salir fresca, sin embargo)

+0

una actualización probablemente sería una buena idea. Comprobaré los números de versión de todos los demás la próxima vez. Gracias – changokun

0

Tuve el mismo problema al intentar agregar a mi repositorio un directorio que ya estaba versionado en otro lugar. Después de eliminar las referencias de svn, el conflicto resultó en obstrucción.

Cambié el nombre de la carpeta culpable y eso funcionó. Pude agregarlo y confirmarlo.
De alguna manera ToirtoiseSVN tenía la referencia del nombre de la carpeta y cambiarla fue una solución exitosa.

5

Esto también puede suceder cuando tiene un enlace simbólico al directorio SVN. Si presiona Commit en el directorio real, está bien, pero si elige Commit en el enlace simbólico, indicará que el directorio está obstruido.