¿Cómo corrijo & # 8220; Confirmar error? El archivo xxx está desactualizado. ruta xxx no encontrada. & # 8221;

StackOverflow https://stackoverflow.com/questions/819896

  •  03-07-2019
  •  | 
  •  

Pregunta

Recientemente me he encontrado con un problema particularmente complejo relacionado con la confirmación del resultado de una fusión en subversión. Nuestro servidor de Subversion es @ 1.5.0 y mi cliente TortoiseSVN ahora es @ 1.6.1.

Estoy tratando de fusionar una rama de función de nuevo en mi tronco. La fusión parece funcionar bien; sin embargo, la confirmación falla con el siguiente mensaje de error.

Commit failed (details follow):
File 
'flex/src/com/penbay/invision/portal/services/http/soap/ReportServices/GetAllBldgsParamsByRegionBySiteResultEvent.as' 
is out of date
'/svn/ibis/!svn/wrk/531d459d-80fa-ea46-bfb4-940d79ee6d2e/visualization/trunk/source/flex/src/com/penbay/invision/portal/services/http/soap/ReportServices/GetAllBldgsParamsByRegionBySiteResultEvent.as' 
path not found
You have to update your working copy first.

Mi baúl de trabajo está actualizado. Incluso verifiqué una nueva en una carpeta diferente para asegurarme de que no hubiera ningún problema local con la combinación. He investigado un poco más sobre esto y creo que parte del problema es un error del usuario. Creo que nuestros problemas son:

  1. Algunos desarrolladores se comprometieron a trabajar con un cliente de Subversion antes de la versión 1.5 y algunos después. Creo que esto tiene el potencial de corromper la información de fusión.
  2. En otras ramas hemos realizado fusiones parciales. Es decir, no siempre realizamos fusiones en la raíz de la rama. Esto fue para facilitar la actualización de los esfuerzos de Flex y .NET dentro de la misma rama.
  3. Realizamos fusiones cíclicas (reflexivas) en nuestra rama. Esto se hizo porque teníamos varias sucursales paralelas y queríamos actualizar periódicamente nuestra sucursal con el último código en troncal.

Todas estas cosas no están explícitamente recomendadas por el libro / equipo de Subversion. Hemos aprendido nuestra lección y ahora conocemos las mejores prácticas. Sin embargo, primero debemos fusionar y comprometer nuestra última sucursal.

¿Cuál es la mejor manera de corregir los problemas que estamos encontrando?

¿Suprimir toda la información de combinación en el tronco y la rama sería una solución viable? no He hecho esto, pero no resuelve el error que obtengo anteriormente.

¿Fue útil?

Solución

Hoy tuve el mismo problema y no he hecho ninguna fusión intermedia, por lo que desde su publicación de apertura solo se aplicará el número 1; sin embargo, he realizado confirmaciones tanto de un cliente svn en ubuntu como de tortoisesvn en windows. Por suerte, en mi caso no se hicieron cambios en el maletero, así que simplemente pude reemplazar el maletero con la rama. Posiblemente diferentes versiones svn entonces? Eso es bastante preocupante.

Si utiliza las funciones svn move / copy / delete aunque no se pierde ningún historial en mi caso, svn movió el tronco y luego svn movió la rama al tronco.

Otros consejos

Acabo de tener este problema y la causa parece ser que un directorio se ha marcado como en conflicto. Para corregir:

svn update
svn resolved <the directory in conflict>
svn commit

Obtuve esto en el servidor 1.6.2, 1.6.8 tortuga. Todo en Windows, no se fusiona en esta rama.

Cambié el nombre de un directorio y de alguna manera (posiblemente debido a AnkhSVN) dos de los archivos dentro del directorio fueron marcados como " reemplazados " en lugar de " normal " ;. Hubo algunos cambios menores adicionales a otros archivos dentro del directorio.

Revertir los archivos marcados como reemplazados solucionó el problema.

También tuve el mismo problema y resolví el mismo mediante el siguiente método

svn resolve --accept=working <FILE/FOLDER NAME>
svn cleanup
svn update <FILE/FOLDER NAME>
svn commit <FILE/FOLDER NAME> -m "Comment"

Espero que esto te ayude :)

Tuve el mismo problema al intentar enviar mi copia de trabajo. Lo que hice fue agregar la carpeta que Subversion informa como " ruta no encontrada " a la lista de ignorar. Cometer (debe tener éxito). Luego agregue la misma carpeta de nuevo a Subversion. Comprometerse de nuevo.

Acabo de tener un problema similar, pero sin ninguna ramificación o fusión para causar el problema. Mi solución fue:

  • svn exportar mi carpeta de trabajo (incluidos los archivos no versionados) a una carpeta temporal.
  • cambiar el nombre de la carpeta de trabajo por una copia de seguridad.
  • svn verifica el tronco.
  • copie todas las carpetas de la carpeta de exportación temporal a la nueva carpeta de trabajo.
  • svn commit.

Todo parece estar bien ahora.

Sé que esta es una publicación antigua, pero este problema todavía ocurre con bastante frecuencia. La forma más sencilla que he encontrado para resolverlo es renombrar / eliminar el archivo .svn / all-wcprops en la carpeta afectada, luego ejecutar una actualización y confirmar.

Tuve el mismo problema, no sé cuál es la razón, pero lo solucioné escribiendo en la terminal

svn update

y luego me comprometo y boom funcionó!

¡Oh niño! ¡Esto se ve mal! La única opción que se me ocurre es que la copia de trabajo está dañada.

Intente eliminar la copia de trabajo, realizar una extracción nueva y volver a realizar la combinación.

Si eso no funciona, entonces registra un error.

No he podido encontrar una solución satisfactoria a este problema; sin embargo, he encontrado una solución insatisfactoria.

He eliminado todos los archivos dentro del tronco y confirmé estos cambios. Luego exporté mi código de sucursal al tronco, agregué todos los archivos e hice un gran compromiso. Esto tuvo el efecto de mi tronco imitando mi rama 1: 1 (que es lo que quería de todos modos).

Lamentablemente, esto crea una gran división, ya que el historial de todos los archivos ahora se pierde " ;. Pero debido a limitaciones de tiempo, no parecía haber ninguna otra opción.

Seguiré interesado en las respuestas que otros puedan tener, ya que me gustaría saber cuál fue la causa raíz y cómo evitarla en el futuro.

Tuve el mismo problema después de fusionar una rama con una tonelada de cambios en mi tronco. Las únicas dos soluciones que pude ver fueron hacer la solución svn move ofrecida por Pacifika o fusionar manualmente los archivos con una herramienta de diferencias . Pero encontré una solución ...

La máquina que no estaba funcionando estaba ejecutando el cliente 1.6.5 de Subversion. ¡Hice exactamente lo mismo en una máquina con Subversion 1.5.4 y funcionó ! En ambas máquinas hice una 1) verificación limpia del tronco, 2) svn merge ..., y 3) svn commit. Mi servidor es 1.5.x para lo que vale.

Espero que esto ayude a alguien.

Tuvo un problema similar con el SVN 1.6.5 en Mac 10.6.5, se actualizó a SVN 1.6.9 y la confirmación se realizó correctamente.

Tuve el mismo problema cuando intenté enviar un paquete eliminado (que contiene varias clases Java, pero ya no era necesario nada del paquete).

Mi solución / solución para solucionar el problema:

  • Revertí todo el paquete
  • eliminó el contenido primero
  • cometió el contenido eliminado
  • finalmente volví a comprometer el paquete eliminado (y funcionó en la mayoría de los casos :-))

Sin embargo, de vez en cuando no fue posible enviar un paquete eliminado (que no contiene nada)

Mi solución:

  • Creé una clase ficticia en el paquete
  • y después de eso repetí los pasos mencionados anteriormente

Mi último consejo ...

Pero a veces es sencillo sincronizar el paquete / proyecto una vez más y, después, todo vuelve a funcionar bien.



Acerca de mi configuración:

  • Eclipse Neon
  • Interfaz SVN: JavaHL (JNI) 1.8.13 (r1667537)
  • VisualSVN Server Manager, versión: 3.3.1



Tal vez podría ayudar a alguien con una de mis sugerencias.

Creo que he visto algo similar cuando las carpetas se movieron en el servidor, pero las copias de trabajo aún estaban vinculadas a la estructura de carpetas SVN más antigua. No estoy seguro si alguien movió las cosas en tu baúl antes de que tuvieras la oportunidad de fusionar la rama.

¿Es eso una posibilidad?

Esto parece ser un problema con la propiedad svn: mergeinfo que se sale de la conexión entre la rama y el troncal.

Lo que nos lleva a las siguientes preguntas (perdone las instrucciones de la línea de comandos, ya que uso mucho la tortuga):

  1. ¿Se está fusionando en el nivel de raíz de troncal o en el nivel de subcarpeta? En mi experiencia, siempre es mejor hacerlo en el nivel raíz, de esta manera, todo el tronco cree que se ha fusionado para formar parte, en lugar de solo una parte (esto parece confundir mucho a svn en 1.5.0)

  2. Mi siguiente pregunta es: ¿estaba usando el parámetro --reintergrate ? Nunca puedo recordar cómo llegar a esto en tortuga, pero cuando vuelvas al tronco desde una rama, debes usar este parámetro.

  3. ¿Ha fusionado el tronco en la rama antes de reintegrarse? ¿Esto puede ayudar a eliminar los conflictos que puede ver cuando se fusiona de nuevo?

  4. ¿Tiene alguna propiedad svn: mergeinfo en la rama que no esté en el nivel raíz? Esto que he encontrado siempre causa problemas. Siempre puede descubrir esto yendo a svn -R pg svn: mergeinfo . Luego puede registrar las ubicaciones y las revisiones que se encontraban debajo de la raíz, si las encuentra relevantes, muévalas a la raíz con svn merge --record-only -r start: end < location > y luego elimínelos de las ubicaciones raíz secundarias con svn pd svn: mergeinfo < location > . Luego debe confirmar estos cambios

  5. Una vez que haya hecho todo eso, intente fusionar de nuevo.

Lo dudo, pero tal vez la ejecución de svn cleanup en tu directorio de trabajo ayude.

Encontré el mismo problema, me levanté la cabeza y descubrí que había cambiado el directorio en el representante de " / " a " / tronco " y se olvidó de hacer el " Cambiar " comando, en TortoiseSVN!

Wow, este me tomó un tiempo resolverlo, ya que estaba usando SVN a través de Eclipse. Al final, lo único que funcionó para mí fue enviar todos los archivos no afectados, luego (con Eclipse cerrado) renombrar el directorio del proyecto y volver a verificar el proyecto desde SVN. Me alegro de que funcione correctamente ahora!

Aparentemente, SVN no es un programa muy confiable. Tuve el mismo problema (usando SVN con Turtoise) y lo resolví guardando el contenido del archivo .cs y luego volviendo a 1 revisión. Esto mostraba conflictos como este: " < < < < < < < nombre de archivo mis cambios

=======     Código fusionado desde el repositorio revisión "

aunque no he hecho nada especial (solo una vez retrasó una revisión).

Reemplazé el contenido de este archivo con el contenido guardado, guardé y luego seleccioné mediante TortoiseSVN ? Resuelto. Entonces podría cometer las modificaciones al repositorio.

Gracias, Jamie Bullock, este trabajo para mí

Según Jamie Bullock,

Acabo de tener este problema y la causa parece ser que un directorio se ha marcado como en conflicto. Para corregir:

  1. svn update
  2. svn resolvió
  3. svn commit
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top