2012-04-22 11 views
9

Así que tengo dos carpetas que quiero agregar a un nuevo repositorio pero se niegan a agregar porque ya están bajo control de versión. Eliminé todas las carpetas .svn en esas carpetas y sus subcarpetas, pero SVN aún lo sabe de alguna manera. ¿Cómo puedo ver de qué repositorio creen que forman parte, decirles que no estén allí y ponerlos en el repositorio nuevo sin eliminarlos ni tener que moverlos?SVN piensa que los archivos ya están bajo el control de versión

Respuesta

17

Si ha eliminado todas las carpetas .svn en su copia local de trabajo, ya no debería tener versiones. Tenga en cuenta que la versión anterior de SVN se usa para crear una carpeta .svn oculta en todas las carpetas, no solo en la carpeta raíz o subcarpetas directas.

También podría hacer un comando export para crear una copia completa sin versión en un directorio de destino para evitar la eliminación manual de las carpetas .svn.

Otro problema que podría causar este error es que en el nuevo repositorio, ya tiene archivos o directorios con el mismo nombre que los directorios/archivos que está tratando de agregar. Una buena práctica sería importar sus archivos en un directorio vacío para evitar conflictos de nombres.

tanto, para resumir, el procedimiento sería así:

  • archivos de exportación desde su repositorio actual o borrar todos los .svn carpetas manualmente
  • crear una carpeta vacía en su nuevo repositorio/target
  • realizar un pago desde la carpeta del repositorio de destino a su copia local
  • ejecutar un compromiso para agregar todos los archivos nuevos
+0

La exportación e importación funcionó más rápido que intentar borrar todos los archivos '.svn' – Biotox

2

Eliminar las carpetas .svn no funcionará si esos archivos ya están en control de versión. Esto es lo que debe hacer:

(1) Borre todas las carpetas que tengan problemas o que haya eliminado previamente de las carpetas .svn.

(2) Realice una ACTUALIZACIÓN SVN para volver a crear esas carpetas y recuperar TODO en ellas (aunque las eliminará en el siguiente paso).

(3) Ahora, elimine las carpetas en cuestión.

(4) Realice una confirmación SVN, que confirmará la eliminación de estas carpetas del repositorio. Ahora, se han ido del repositorio, como quisieras.

(5) Ahora puede crear las carpetas nuevamente y hacer lo que desee; cree un nuevo repositorio SVN a partir de ellas; o volver a agregarlos al repositorio existente.

Parece que los pasos (1) - (2) son redundantes e innecesarios; pero para estar seguro, deberías hacerlo de todos modos.

Cuestiones relacionadas