Desafortunadamente, los clientes de svn antiguos solo hacen esto, y las herramientas que se basan en estas versiones antiguas de svn también se rompen. La única forma de resolver este problema es eliminar las entradas de svn: mergeinfo creadas antes de que se hayan confirmado. Como la mayoría de las personas no son conscientes de que están creados, entonces la única manera real de hacer cumplir que es un gancho pre-commit, o simplemente hacer:
svn propdel --recursive svn:mergeinfo $ROOT/*
a limpiarlos de vez en cuando. Tenga cuidado al hacer esto, ya que destruirá cualquier registro de fusiones parciales que tenga hecho, por lo que realmente debería hacer esto si realmente no realiza fusiones parciales. El que pregunta no lo hace, y nosotros tampoco en nuestro entorno.
El problema se corrigió en los nuevos clientes svn, por lo que el problema debería desaparecer lentamente, pero eso podría llevar algún tiempo antes de que se reemplacen todas las herramientas en su flujo de trabajo.
Basado en otra respuesta a esta pregunta, una explicación rápida de las causas del problema. Cuando haces una copia de trabajo, mueve o elimina los clientes svn anteriores a 1.5.5 creando una entrada de svn: mergeinfo espuria. Esto es resolved in svn 1.5.5.
¿Podría compartir el script hook? –
@ WinstonSmith: ya no trabajo en la misma empresa, por lo que no tengo acceso al enganche. Si es realmente importante para usted, puedo intentarlo y preguntar, pero debe ser muy trivial de implementar (si no, simplemente haga una pregunta aquí sobre cómo hacerlo). – ripper234