2009-04-29 8 views
7

Estamos utilizando Subversion para realizar un seguimiento de nuestro código. Como parte del proceso de compilación, algunos archivos AssemblyInfo.cs se editan temporalmente mediante el script de compilación, y cuando finaliza la compilación, se revierten (también mediante el script de compilación). Sin embargo, uno de nuestros desarrolladores a obtener este mensaje cuando se intenta realizar la operación de revertir:Subversion: Cómo obtener "El cliente es demasiado viejo", aunque todos los desarrolladores ejecutan la misma versión de svn

El cliente es demasiado viejo para trabajar con copia de trabajo 'el camino'. Necesita obtener un cliente de Subversion más nuevo o degradar esta copia de trabajo.

Todos estamos ejecutando la misma versión de Subversion (1.5.1). La única diferencia entre las configuraciones del desarrollador es que el usuario que tiene el problema está usando una versión posterior de TortoiseSVN (1.6.0, a diferencia de 1.5.x para las demás), y hemos estado ejecutando Subversion 1.5.1 todo el tiempo. repositorio ha existido

¿Tiene alguna pista sobre cuál podría ser el problema?

+0

¿Está compartiendo la misma copia de trabajo? Su WC debería funcionar felizmente como un 1.6 WC con su 1.6 cliente. – hometoast

Respuesta

14

Cada vez que un cliente de subversión toca una copia de trabajo, lo primero que hace es actualizar silenciosamente esa copia de trabajo a su versión.

TortoiseSVN lo habrá hecho, dejando que los otros clientes de subversión no puedan leer la copia de trabajo de manera confiable.

Esto es válido para todos los clientes de subversión en todas las versiones (hasta el momento). Commandline, Tortoise, subclipse, ankh, rapidsvn: todos se comportan igual.

Hay una secuencia de comandos python para degradar una copia de trabajo, o puede simplemente eliminarla y comenzar de nuevo con una nueva comprobación. Ver el compatibility section of the release notes.

La tortuga generalmente sigue el principal número de versión del cliente de subversión que utiliza.

Editar:

En su caso estás utilizando 2 - tortuga clientes y la línea de comandos en el script de construcción. El script de compilación no podrá funcionar hasta que se actualice a la última versión.

Tenemos este problema nosotros mismos.

+0

Pero en nuestro caso es al revés; el único cliente que se queja es el que tiene la versión posterior. –

+0

Es TortoiseSVN 1.6 quejándose, o es un cliente SVN anoter ejecutado por el mismo usuario con TortoiseSVN 1.6 quejándose? –

+0

No importa mi comentario; pensando hacia atrás. Tiene razón en que dos clientes están en uso; tanto un cliente de línea de comando (1.5.1) como el de Tortoise (1.6.x). Estoy bastante seguro de que este es el problema. –

3

TortoiseSVN 1.6 utiliza una versión más reciente del cliente de subversión que 1.5. Eso es probablemente lo que está causando tu error.

Otra posibilidad es que el script de compilación está utilizando un cliente diferente.

+0

+1; en general, siempre revise dos veces la versión utilizada en sus binarios reales de Subversion, todas las herramientas de soporte (como TortoiseSVN) y cualquier complemento en su IDE, y asegúrese de que pueda obtener versiones coincidentes antes de actualizar cualquier cosa. – Rob

+0

Gracias por eso (siendo investigado ahora mismo). Creo que el error podría ser que el usuario suponga que Tortoise simplemente está "envolviendo" el cliente svn instalado. –

+0

buena llamada sobre las diferentes herramientas que se utilizan. Intentar revertir con (por ejemplo) VisualSVN 1.5 no funcionará cuando se desproteja por Tortoise 1.6+ – hometoast

Cuestiones relacionadas