Pregunta

Me estoy arrancando el pelo con este.

Tengo un sitio cuya versión está controlada mediante Subversion.Utilizo aptana (eclipse, subclipse) para hacer el svn.He estado registrando y retirando archivos, actualizando, etc. y todo está bien.Sin embargo, el sistema que hemos estado construyendo ha ido agregando sus propios archivos y carpetas.

Cuando intento cometer estos, me dice <path> no es una copia de trabajo.Si intento hacer una limpieza, aparece el mismo error.Descubrí que puedo agregar manualmente cada archivo al control de versiones, pero esto genera el mismo error.Hacer una actualización no ayuda, actualizar el espacio de trabajo tampoco hace nada.La limpieza parece detenerse después del error y luego el directorio se bloquea.

Sé que se supone que debes agregar archivos usando SVN, pero ¿cómo diablos trabajas con archivos generados?¿Cómo puedo solucionar esto? "<folder> ¿No es un error "directorio de copia de trabajo"?¿Cómo consigo que Subversion simplemente mire los archivos y los agregue a su repositorio?

¿Fue útil?

Solución

Si desea que los archivos generados a añadirse a SVN, utilice svn add añadir recursivamente ellos - Esto se asegurará de que todos los directorios son parte de la copia de trabajo, y todos los archivos y directorios se añaden a SVN, y la voluntad estar comprometido como parte de la siguiente svn commit.

Sin embargo, los archivos y carpetas a menudo generados no debe añadirse a SVN, ya que se generan de los archivos de origen como parte de una generación. En este caso, se debe marcar el SVN: ignorar de manera que no son parte de la copia de trabajo.

Otros consejos

Hemos tenido este problema hoy en día cuando traté de añadir una carpeta "A" en el que no tenía permiso de escritura (por lo que no pudo crear la carpeta A / Svn).

Ejecutar svn status me dio un "~" al lado de la carpeta A. Ejecución de la limpieza SVN dijo que los padres de A estaba cerrada.

Lo que terminó de trabajo fue:

cp -r A A~    # backup, since A was not in the repo
rm -rf A      # removed locked directory
svn rm A      # remove A from pending commit
mv ~A A       # restore backup
svn add A     # re-add to pending commit
svn cleanup   # (had to cleanup several parent folders higher as well)

El no es un error de copia de trabajo significa que la carpeta actual no se ha inicializado correctamente por SVN .

Para corregir el error simplemente cambiar el nombre de la carpeta actual y luego obtener una copia de trabajo adecuada del proyecto de SVN haciendo un Pedido de el proyecto.

La hora de salida será a continuación, crear una copia de trabajo adecuadamente configurado de ese proyecto.

Yo sólo encontré el error "no es una copia de trabajo" en mi, copia ejem, trabajando. Esto era para un proyecto JDeveloper y resultó que la actualización JDeveloper (11.1.1.2.0) que me acabo de instalar incorpora una versión posterior de SVNKit que la que yo utilizo para la línea de comandos de acceso a SVN (jsvn). Así JDeveloper había mejorado en silencio el formato de los archivos .svn, lo que significa que el cliente de línea de comandos no podía entenderlos. La moneda cayó cuando jsvn se quejaron de un archivo que falta ".svn / formato" en el directorio de nivel superior de mi proyecto. He encontrado un montón de estos en las subcarpetas, todos en busca idénticos y que contiene sólo el dígito "9". Así que he copiado a uno en la carpeta de nivel superior y, finalmente, di jsvn un mensaje apropiado: "svn: Este cliente es demasiado viejo para funcionar con la copia de trabajo, por favor obtener un cliente de Subversion más reciente ''.". Una vez que había identificado (a través de Google) e instalado el nivel SVNKit cliente compatible, el nuevo jsvn mejorada fue capaz de reconocer que mi copia de trabajo es de hecho una copia de trabajo. Moraleja de la historia:. Si obtiene este error, y está usando diferentes clientes SVN en la misma máquina, el problema puede ser que lo que tienen fuera de sincronización

topó con esto ahora utilizando TortoiseSVN la limpieza de algunos directorios muertos. Hice una copia de seguridad de los archivos y luego se usa el navegador representante eliminar el directorio defectuosa (que estaba perdido de todos modos). A continuación, la limpieza en el proyecto funcionó y ahora puede seguir adelante con mis archivos actuales.

Por favor, tratar de encontrar el origen del problema es. Es este el archivo o algo más Svn faltante. Recuerde Svn archivo se crea cuando haya terminado con su registro. y contiene la ruta del directorio correspondiente, los nombres de código con un número único etiquetados con ellos. Ir a la ruta de la base de su proyecto le parece está marcada a la perfección. Crear un nuevo paquete temporal y añade un código Java de ejemplo en ese camino. Añadir a la versión e intentar cometer. Si se obtiene un error diciendo que la carpeta está bloqueada (El intento de bloquear la carpeta que ya está bloqueado), y luego ir la carpeta .svn y cambiar el nombre del archivo de bloqueo. Vuelva a intentar el registro y comprometerse

Si funciona bien, entonces ya está. Utilice el mismo directorio base y el registro de su código de nuevo en adelante a partir de ese directorio a su nivel de carpeta después de cleaing arriba.

"No es una copia de trabajo" significa que uno de los lugares en los que el IDE está tratando de ejecutar en svn no está controlada por <=> en sí (como la adición de archivos en un subdirectorio no bajo <=>). Yo diría que ver sus trayectorias dentro del IDE.

Como hago todas las tareas con herramientas visuales, no puedo decirte qué comandos deben ejecutarse.

Este es mi entorno, Windows XP.tortoiseSVN 1.6.7 con Subversion 1.6.9, Eclipse 3.5 con Subclipse 1.6.10.y el repositorio se administra con un servidor visual SVN en Windows.

  1. En el servidor visual svn I eliminó la carpeta que fue creado por la otra herramienta (este era el problema, tal como dijo Keltia).
  2. En mi explorador de Windows hago clic derecho sobre mi proyecto y con las opciones de tortuga SVN presione actualizar.Con esta acción la carpeta fue eliminada en mi copia de trabajo.
  3. Comprometido todos mis cambios.
  4. ejecutó la herramienta que crear la carpeta (de nuevo).
  5. con tortuga SVN que marqué con agregar a la lista de ignorados.

Espero que esto ayude.

en mi caso me muevo lugar del espacio de trabajo del eclipse a otro problema es entonces ocurrió. Para resolver proyecto de pago y envío problema que forman el repositorio SVN. A continuación, en el viejo proyecto que limpiar todos los archivos de SVN. (Svn búsqueda simple y eliminar) entonces copiar el contenido a los justos CheckedOut uno mis cambios se hacen visibles y mi proyecto es hasta la fecha. Este método se puede aplicar para otros errores molestos. La esperanza ayuda a alguien

Por favor move directorio actual en otro lugar, y ejecutar comandos svn update, vuelva a colocar el directorio con el directorio trasladado
si el uso tortoisteSVN, antes de que se puede ejecutar svn update, que ejecute la limpieza de directorios raíz

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top