2011-01-20 8 views

Respuesta

10

¿Qué tengo que hacer para que sea una entidad completamente independiente?

El único vínculo entre el nuevo repositorio y el original es una serie de propiedades de revisión que son utilizadas por svnsync synchronize. Puede quitar los que, como este:

svn propdel --revprop -r 0 svn:sync-from-uuid http://svn.example.com 
svn propdel --revprop -r 0 svn:sync-last-merged-rev http://svn.example.com 
svn propdel --revprop -r 0 svn:sync-from-url http://svn.example.com 

esto no hace mucho, excepto asegurándose de que svnsync synchronize no se puede ejecutar más.

editar: Acabo de pensar en otra cosa. Puede haber utilizado svn:externals propiedades en sus proyectos para apuntar a otro repositorio u otra ubicación dentro del mismo repositorio.

Uno debe utilizar el relative URL syntax para los enlaces dentro del mismo repositorio, en cuyo caso no hay ningún problema. Pero si se utilizó una URL absoluta para eso, dichos enlaces continuarán apuntando al repositorio original después de svnsync. Puede inspeccionar todos svn:externals propiedades similares (que podría tomar un tiempo, examina de forma recursiva todas las carpetas):

svn propget -R svn:externals http://svn.example.com/ 
+0

¿Alguna idea de cómo corregir esas propiedades 'svn: externals' en revisiones existentes, sin embargo? – 0xC0000022L

+0

@STATUS_ACCESS_DENIED: una forma de simplemente reasignar elementos externos ([como en mercurial] (http://mercurial.selenic.com/wiki/SubrepoRemappingPlan)) para las revisiones existentes falta en SVN. Todavía podría ser posible reescribiendo el historial ('svnadmin dump' todo el repositorio, busque y reemplaza las URL, luego' svnadmin load' en un nuevo repositorio), pero ese es un juego totalmente diferente. Nunca lo he intentado. –

+0

gracias por la respuesta. Tenía miedo de eso ...: - | – 0xC0000022L

0

Básicamente, necesita la configuración de Apache para:

  • de referencia que nueva operación con una URL diferente y una diferente AuthName
  • declarar su nuevo usuario en el archivo conf/authz de dicha nueva operación.
  • declarando su contraseña (si está utilizando: q modo de autenticación AuthType Basic)

Tener diferentes contraseña no es obligatoria: una vez que los dos repositorio son administradas con dos direcciones diferentes (bajo el mismo Apache o dos diferentes 'apache'), serán independientes el uno del otro.

+0

I * piensa * la fuente está utilizando la configuración de tipo Apache y en el destino estoy usando svnserve a través de SSH (según http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.serverconfig.choosing) – siliconpi

+0

@ matt74m: por lo que el mecanismo de autenticación será diferente, las direcciones también. Esos dos repos serán bastante independientes (a menos que necesite resincronizarlos regularmente) – VonC

Cuestiones relacionadas