Error de subversión: (Método 405 no permitido) en respuesta a MKCOL

65

Recibo el siguiente error al intentar confirmar una nueva adición de directorio.

svn: Commit failed (details follow):
svn: Server sent unexpected return value (405 Method Not Allowed) in response to MKCOL request for '....

Nunca he visto este error antes. ¿Como puedo solucionar este problema?

Solución
Logré resolver el problema:

  • Elimine el directorio principal de la carpeta que da el problema.
  • Hacer SVN Update.
  • Una carpeta con el mismo nombre que la nueva ya existía en el repositorio.
  • Eliminar esta carpeta.
  • SVN commit.
  • Copie la nueva carpeta, la programación para la adición y la confirmación SVN.
Sergio del Amo
fuente
Carece de información, como su configuración, su transporte (HTTP / HTTPS), los mensajes en el registro de errores del servidor (el más importante), si está ejecutando un servicio de caché web entre el cliente y el servidor, etc ...
Juliano
77
Agregue soluciones como respuestas, en lugar de agregar a la pregunta
Sam Cogan
3
Odio que svn dé error y pare. Parece un niño lloriqueando todo el tiempo. Revertí, agregué y luego comprometí y acepté mágicamente el servidor.
Para el repositorio de código de Google, consulte - stackoverflow.com/a/32636072/1406510
nanosoft

Respuestas:

44

Este error generalmente indica que la carpeta que está tratando de agregar ya existe en el repositorio: ¿ha realizado una actualización recientemente o, para empezar, realizó un pago no recursivo?

Anteriormente encontré este error: encontré un blog que me dijo cuál era el problema. La solución fue un poco más compleja, elimine el directorio en cuestión de mi copia de trabajo (copiándolo en otro lugar), ejecute una actualización recursiva, luego combine los dos directorios juntos manualmente.

Editar: Opps - ya respondió en el cuerpo de la pregunta. Y aquí estaba todo emocionado de saber la respuesta a una pregunta sin respuesta :)

andrewc
fuente
@Andrew - bueno, respondiste la pregunta correctamente ... @Sergio debería haber respondido su propia pregunta.
Josh
8

Tuve un problema similar con MKACTIVITY en googlecode. Fue porque había revisado el repositorio con http :, pero los registros requerían https :.

Troy Daniels
fuente
Gran captura: estaba a punto de desatar la furia del programador impaciente en mi máquina. :) Necesitas volver a verificar la carpeta con https: (o si eres astuto, limpia la carpeta a excepción de .svn, luego modifica el contenido de .svn / Entradas que tiene la URL de http => https. Ahora el la pantalla de confirmación mostraría la URL https.)
Gishu
5

Obtuve el mismo error y logré resolverlo:

  1. SVN Cambie el nombre del directorio problemático a 'foo', o lo que sea
  2. SVN Commit
  3. SVN Cambiar el nombre al nombre que quieras
  4. SVN Commit

No estoy seguro de si esto funciona en todos los casos, pero es más simple que eliminar el directorio principal.

Sam Dutton
fuente
Esa solución simple resolvió mi problema. ¡Muchas gracias! :)
consuela
4

¿Su repositorio svn permite confirmaciones a través de HTTP? Algunos repositorios, como SourceForge, permiten el pago anónimo a través de HTTP, pero requieren que los desarrolladores se registren a través de svn y SSH.

Dave Cheney
fuente
3

En mi caso, tenía problemas para registrar archivos dentro de una carpeta. Seguí los pasos que Sergio describió con algunos cambios.

  1. Copié el directorio padre del problema.
  2. Archivos .svn eliminados en el directorio copiado
  3. svn delete / parent_directory
  4. Cometer
  5. Crear nuevo directorio en repositorio
  6. Cometer
  7. Mover subdirectorios del directorio copiado al repositorio
  8. Cometer
  9. Copiar archivos individuales
  10. Cometer

Tenía algunos archivos con los que tuve problemas. Los dejé fuera del repositorio, pero los recreé con un nuevo nombre.

Amanecer verde
fuente
2

Tuve este problema cuando eliminé un directorio SVN, y luego lo recreé, cuando confirme el nuevo directorio agregado, SVN produjo este error. Resolví el problema ejecutando un SVN en el nuevo directorio agregado y luego resolví los conflictos manualmente .

imikay
fuente
1

Utilizando Unfuddle, un servicio de svn alojado, veo repetidamente este error cuando el .svn es pisoteado al copiar archivos en el buscador de OS X. El encantamiento svn que funcionó para mí:

  • revertir
  • actualizar
  • eliminar la carpeta usando la url remota
  • agregar y confirmar la carpeta
xentek
fuente
0

En mi caso, estaba agregando un nuevo directorio que mis metadatos locales (cliente) suponían que ya estaban en el servidor y Cleanup no lo rectificó. Realicé una copia de seguridad de todos los archivos nuevos y modificados, eliminé todo (excepto la carpeta raíz .svn), ejecuté Actualizar para restaurar los archivos y volví a copiar en el directorio los archivos nuevos y modificados que había respaldado. Agregué los nuevos archivos nuevamente y me comprometí con éxito.

stimpy77
fuente
0

En Eclipse es fácil de arreglar.

Equipo> Cambiar a otra etiqueta / rama

Seleccione, totalmente recursivo y marque Cambiar copia de trabajo a la profundidad especificada

presiona OK

El icono de la carpeta cambia. Haga clic derecho y (equipo>) Marcar resuelto.

Eso es todo, ahora puedes comprometerte.

juliangonzalez
fuente
Tenga en cuenta que Eclipse es una herramienta de desarrollo y no es realmente el foco de ServerFault.
Andrew B
0

Haga una copia de seguridad de la carpeta.
Elimine la carpeta en el repositorio (usando Repo-Browser).
Comprometerse de nuevo.

Funciona bien para mi.
Marcus

Marcus
fuente
0

Tuve un problema similar, hice una copia de seguridad del directorio (solo por seguridad) que actualizar la carpeta svn. después de eso podría comprometerme de nuevo. (y no usé mi copia de seguridad)

Ohad Cohen
fuente
-1

Tuve un problema con e175002 200 OK. Pero leí que la ruta en el mensaje de error estaba hablando de un servidor incorrecto, por lo que la URL de mi troncal no era la correcta ( http: // localhost: 80 / path / to / my / trunk / ) ... ¡espera! ¿LOCALHOST? ... Y ahora me doy cuenta de que es porque en mi primera revisión, mi configuración envió mis archivos de proyecto a mi repositorio localmente ... Entonces, en su primera revisión, asegúrese de que su configuración para la IP de su servidor no sea incorrecta porque después de eso ... su el repositorio contendrá información incorrecta, y tendrá que encontrar una manera de modificar esa configuración incorrecta en él o en cada cliente que quiera usar su repositorio por primera vez.

Mi solución fue verificar cada carpeta de mi proyecto ... en cada carpeta hay una carpeta .svn que almacena información, y en cada carpeta .svn un archivo llamado "entradas" ... En este archivo hay una ruta al servidor, reemplacé la línea incorrecta por la buena IP en cada entrada almacenada en todas las carpetas .svn. Y luego no más errores.

Espero eso ayude. :) lo siento si es difícil de entender mi publicación ^^ 'Soy un gran esfuerzo.

Claod
fuente