Pregunta La copia de trabajo XXX bloqueada y la limpieza fallaron en SVN


Me sale este error cuando hago un svn update:

Copia de trabajo XXXXXXXX bloqueado Por favor   ejecutar el comando "Limpieza"

Cuando realizo la limpieza, obtengo

La limpieza no pudo procesar el   siguientes rutas: XXXXXXXX

¿Cómo salgo de este ciclo?


564
2018-02-04 04:41


origen


Respuestas:


Un enfoque sería:

  1. Copie los elementos editados a otra ubicación.
  2. Elimine la carpeta que contiene la ruta del problema.
  3. Actualice la carpeta que contiene a través de Subversion.
  4. Copie sus archivos de nuevo o fusione los cambios según sea necesario.
  5. Cometer

Otra opción sería eliminar la carpeta de nivel superior y salir de nuevo. Sin embargo, afortunadamente no llega a eso.


513



Para mí, el truco era correr svn cleanup en la parte superior de mi copia de trabajo, no en la carpeta donde había estado trabajando todo el tiempo antes de que ocurriera el problema.


463



Mira en tu .svn carpeta, habrá un archivo llamado lock. Borre ese archivo y podrá actualizar. Puede haber más archivos de bloqueo en el .svn directorio de cada subdirectorio. Ellos necesitarán eliminar también. Esto podría hacerse simplemente como un lote desde la línea de comando, por ej.

find . -name 'lock' -exec rm -v {} \;

Tenga en cuenta que está editando archivos manualmente en .svn carpeta. Ellos han sido puestos allí por una razón. Esa razón podría ser un error, pero si no, podrías dañar tu copia local.

FUENTE : http://www.svnforum.org/2017/viewtopic.php?p=6068


207



En mi caso, lo resolví eliminando manualmente un registro en el registro de bloqueo de archivos SQLite ".svn \ wc" en la tabla WC_LOCK.

Abrí el archivo "WC" con el editor SQLite y ejecuté

delete from WC_LOCK

screenshot showing all entries purged from WC_LOCK

Siguiendo eakkasun comentario, es posible que deba eliminar todas las entradas de WORK_QUEUE mesa también.


99



La forma más fácil de la historia

  1. Ir Directorio principal (Carpeta) de Proyecto.
  2. Pres Botón derecho del ratón 
  3. Seguir adelante TortoiseSVN entonces presione Limpiar...
  4. El diálogo de limpieza aparecería automáticamente
  5. Seleccionar Clean up working copy status, Break locks, Fix time stamps, Vacuum pristine copies, Refresh shell overlays, Include externals
  6. Pres DE ACUERDO

Hiciste tu trabajo con éxito.

Verifique las capturas de pantalla para su referencia.

Primer paso:

enter image description here

Segundo paso: Habilite la opción Bloquear interrupción (segunda casilla de verificación en la ventana emergente de limpieza) enter image description here

Espero que esto te ayude mucho.


81



Un colega en el trabajo ve constantemente este mensaje, y para él es porque eliminó un directorio bajo el control de la versión SVN sin eliminándolo de SVN, y luego creó un nuevo directorio en su lugar, no bajo control de versión, con el mismo nombre.

Si este es tu problema ...:

Hay diferentes maneras de solucionarlo, dependiendo de cómo / por qué se reemplazó el directorio.

De cualquier manera, es probable que necesite:

A) Cambie el nombre del directorio existente por un nombre temporal

B) Hacer un SVN revertir para recuperar el directorio eliminado del sistema de archivos, pero no desde SVN

Desde allí, podrías

A) Copie los archivos relevantes en el directorio que fue eliminado

B) Si tuvo un cambio significativo de contenido en el directorio, haga una eliminación de SVN en el original, confirme y cambie el nombre de su nuevo directorio al nombre deseado, seguido de un SVN add to get ese uno bajo control de versión.


48



Para mí, ninguna de las soluciones anteriores funcionó. Encontré una solución rompiendo bloqueos. Cuando realicé la limpieza de svn, seleccioné "Bloquear bloqueos" junto con "Limpiar el estado de copia de trabajo".

enter image description here


23



Éste trabajó para mí.

  1. Ve a la carpeta raíz,
  2. Clic derecho y limpieza
  3. Verifique todas las opciones disponibles
  4. Presiona OK

Después de la limpieza, le permitirá actualizar a la última versión.


22



Para mí, en realidad fue culpa de Tortoise, más o menos. Tortoise solo se quejó de que "no puedo limpiar, ejecutar la limpieza", pero cuando ejecuté la línea de comando (svn cleanup), me dijo claramente que no podía eliminar algunos archivos que estaban en uso, cuya solución era obvia. Una vez que cerré Visual Studio (que mantenía los archivos abiertos), la limpieza funcionó bien.

Otros programas también pueden mantener abiertos los archivos en el repositorio que causa este problema. Excel sosteniendo un xls abierto fue el culpable en otra instancia, por lo que puede ser prudente cerrar todos los programas que puedan estar utilizando algo en el repositorio o incluso reiniciar para forzar el cierre de los programas y luego intentar la limpieza nuevamente.


11



Tuve este problema porque las carpetas externas no quieren estar vinculadas en una carpeta existente. Si agrega una línea de propiedad svn: externals donde el destino es una carpeta existente (con versión o sin versión), obtendrá el error de bloqueo de Woring Copy de SVN. Aquí una limpieza también le dirá que todo está bien, pero la actualización no funcionará.

Solución: elimine la carpeta problemática del repositorio y realice una actualización en la carpeta raíz donde está establecida la propiedad svn: externals. Esto creará la carpeta y todo estará bien de nuevo.

Este problema surgió para mí porque svn: externals para archivos requiere que la carpeta de destino esté controlada por la versión. Después de notar que esto no funciona en diferentes repositorios, cambié de archivos externos a carpetas externas y me metí en este lío.


7