tutorial - Error de Svn "La operación anterior no ha terminado"
tortoisesvn windows 10 (12)
Esta mañana estaba comprometiendo varios elementos a un repositorio svn. Durante la operación de confirmación, mi sistema operativo se bloqueó y ahora todos los comandos svn (incluida la limpieza) terminan con el mismo error.
Previous operation has not finished; run ''cleanup'' if it was interrupted
Please execute the ''Cleanup'' command."
¿No obtengo otros errores como Subversion bloqueado debido a que "la operación anterior no ha finalizado"? y como el repositorio es muy grande, no quiero revisar todo de nuevo como se sugiere aquí: los problemas con la operación anterior no están terminando
''svn cleanup'' funcionó para mí. Puede que necesite ejecutar esto como administrador.
Abra la configuración de Totroise SVN. Borrar todos los datos en la pestaña Datos guardados
Asegúrese de que su directorio de trabajo no esté abierto en ningún IDE.
Si está abierto, ciérrelo y luego haga svn clean-up.
En realidad, acabo de encontrar la respuesta a mi pregunta mirando here
Parece que svn estaba atascado en la operación anterior. Todas estas operaciones se almacenan en la base de datos wc.db en la carpeta .svn.
Descargando SQLite a mi directorio de pago y ejecutando
sqlite3.exe .svn/wc.db "select * from work_queue"
de cmd
Tengo una lista de todas las operaciones pendientes. Estas operaciones son las "no terminadas" que luego ejecutando
sqlite3.exe .svn/wc.db "delete from work_queue"
Todas estas operaciones pendientes se eliminan y puedo confirmar nuevamente. No hay necesidad de volver a pagar o nada
Esto me sucedió a mí, no quería hacer nada tan drástico como eliminar mi archivo .svn. Sin embargo, svn cleanup en mi IDE no resolvía el problema.
Lo que funcionó para mí:
- Cerrar IDE (no sé si es necesario, pero es un paso que di)
- Abrir el explorador de archivos
- Haz click derecho en tu proyecto
- Seleccione TortoiseSVN -> Limpiar ...
He visto muchos hilos y respondo a la misma pregunta. Lo que más vi es "Ejecutar limpieza" en el nivel superior del directorio. Pero lo he intentado más y sigo teniendo el error. Así que lo que hice es resolverlo hasta la finalización.
Instale sqllite (32 bit binario para windows). Coloque el archivo exe en la carpeta donde reside el directorio .svn de nivel superior.
sqlite .svn / wc.db "select * from work_queue";
eliminar de work_queue;
Ejecute estas tres instrucciones y después de esto ejecute la limpieza. Se ejecutará sin ningún tipo de hassel.
Probé la mejor solución de Sigurd V, pero la consulta SELECT me dio errores. Estoy usando SVN 1.9.2 y SQLite 3.13.0.
Para aclarar, el archivo para descargar del sitio SQLite es "sqlite-tools-win32-x86-3130000.zip (1.51 MiB)"
Esto es lo que hice con ayuda de nuestro software eng:
- descargue este zip y copie el sqlite3.exe en mi carpeta de trabajo
- en la línea cmd, conéctese a la base de datos svn en esta carpeta:
sqlite3.exe .svn/wc.db
- escriba comando a SQLite para mostrar lo que está bloqueado:
sqlite> select * from work_queue;
- escriba comando a SQLite para eliminar las solicitudes:
sqlite> delete from work_queue;
- repita el paso 3 para comprobar que nada está bloqueado.
- ¡Todo ha vuelto a la normalidad ahora!
Captura de pantalla que muestra step3 / 4/5:
Probé todas las soluciones enumeradas en esta página, pero mi problema aún no funcionó.
Lo solucioné de otra manera. En caso de que algunos todavía no hayan encontrado una solución, intente esto (estoy usando TortoiseSVN 1.9.5):
Haga clic en "Limpiar ..." como de costumbre y abra la ventana emergente de limpieza
marque "romper cerraduras"
haga clic en el botón "OK" para ejecutar
Soy capaz de resolverlo de la siguiente manera.
1) Vaya a El directorio donde no puede limpiar con éxito a través de svn. (Carpeta raíz o carpeta secundaria).
2) Seleccione la carpeta .svn en el directorio, corte esa carpeta y péguela en la unidad separada o en una ubicación separada (fuera del directorio svn)
3) Ahora, vaya al directorio - haga clic derecho y seleccione TortoiseSVN-> Repository-browser.
4) Y, compruebe la carpeta. (No se realizará nueva comprobación)
5) Todos sus artículos serán versionados nuevamente, y reparará el problema interno de svn, y el problema debería resolverse.
También recibí este error y no quiero descargar sqlite. Y finalmente resuelvo esto por:
- Cierre mi eclipse. (Esto es importante, sin esto no puedo hacer el siguiente paso con éxito)
- En la carpeta del proyecto, haga clic con el botón derecho, TortoiseSVN-> Limpiar-> Aceptar
Entonces puedo actualizar y cometer sin error!
Cierre todos los archivos o programas usando cualquier cosa de su repositorio (esto desbloqueará el svn para la limpieza)
Ejecute ''svn cleanup'' contra su copia de trabajo (nos muestra el resultado si falla nuestro)
Ejecute
svn cleanup
contra su copia de trabajo (nos muestra el resultado si falla nuestro)o
Verifique una copia de trabajo nueva con el comando
svn checkout
y copie sus cambios desde el wc roto a este. Ejecute commit nuevamente a través de la nueva copia de trabajo.