Pregunta

Una especie de pregunta de novato, pero tengo problemas para usar SNVKit.

Estoy usando SVNKit en una aplicación para confirmar cambios en los archivos. Tengo éxito al agregar los archivos y carpetas a la copia de trabajo, pero tengo problemas para enviarlo al repositorio.

El comando que estoy intentando ejecutar es 'commit -m " Test Add " / svnroot / project1 / 'pero sigo obteniendo " svn:' / home / user 'no es una copia de trabajo "

Tengo una estructura similar a esta:

  • / svnroot /
  • / svnroot / project1 /
  • / svnroot / project1 / grouping1 /
  • / svnroot / project1 / grouping1 / myfilesarehere

Si intento enviar el archivo, recibo el siguiente mensaje: " '/ svnroot / project1 / grouping1' no está bajo el control de versiones y no forma parte de la confirmación, pero su hijo es parte de la confirmación. " ;

¿Qué podría estar haciendo mal?

EDITAR: se corrigieron los directorios.

¿Fue útil?

Solución 7

Lo he rastreado hasta un posible error en alguna parte. Si no agrego un mensaje, funciona. Tiempo para más excavaciones. Gracias por los punteros.

Otros consejos

Si tiene un directorio y su elemento secundario agregado, pero ninguno de los dos está confirmado, creo que recibirá este mensaje si intenta confirmar solo el elemento secundario. Primero debes confirmar el directorio padre.

Recibí este mensaje y noté que estaba haciendo una confirmación mientras estaba en el subdirectorio. Cuando cambié a la raíz del árbol, se comprometió sin problema.

mueve tu -m " comentario " hasta el final. Simplemente cambiaría el directorio a su directorio de proyectos. Luego, simplemente escriba svn commit -m " comment " y svn hace el resto.

Creo que el problema es que está realizando cambios en el repositorio SVN real en lugar de realizar una importación, revisar una copia por sí mismo, hacer cambios y luego realizar una confirmación de su copia de trabajo extraída después de agregar cualquier subdirectorios. Entonces: importar , checkout , realice cambios y, finalmente, haga un add para cada nuevo archivo o directorio y commit -m " message " forma el nivel superior.

Más información en el gratis en línea SVN " tortuga " libro .

No está del todo claro porque los ha reemplazado inconsistentemente, pero parece que está confundiendo las rutas / URL del repositorio con las rutas de copia de trabajo. Si está agregando o confirmando archivos, use siempre las rutas de copia de trabajo. Intenta jugar con la línea de comandos svn antes de usar SVNKit.

Si desea confirmar un nuevo directorio completo, considere usar svn import en su lugar. Tal como está ahora, es posible que tenga que revertir o alguna otra acción para limpiar el desorden actual.

Algunas veces, el uso de algunos softwares como eclipse o Versions.app produce estos errores. En este caso, salga del cliente SVN y hágalo en la línea de comandos.

Probablemente haya realizado una refactorización y está tratando de confirmar 'some.package.YourClass.java', en ese caso intente confirmar el directorio (paquete) 'some'.

Si desea salvarse de ese dolor de cabeza en el futuro, considere cambiar a GIT en lugar de svn. Recuerde que svn mantiene sus cambios en un archivo .svn e intenta enviarlo al repositorio. Cuando lo confirmes, de acuerdo con este archivo .svn, presionará 'tus cambios'. Pero, ¿y si los cambios son muy complejos? svn no puede manejarlo.

GIT por otro lado: recupera todas las actualizaciones para que su proyecto esté actualizado. Y al cometerlo solo sobrescribe el repositorio, ya que sabe que el tuyo es el más reciente y no tiene prisa.

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