2012-04-04 25 views
7

Tengo un repositorio de Subversion llamado 'repo'. Dentro de repo están trunk/y branches/directories. Dentro de las sucursales/hay varias docenas de ramas de publicación, p. 1.0 /, 1.1 /. Estas sucursales/directorios contienen una aplicación relativamente grande.Cómo recuperar un Subversion externo sin recuperar todos los demás directorios y subdirectorios

Quiero agregar un externo en la raíz del repositorio, llamado 'myExternal'. Cuando defino el externo, la única forma de que SVN cree el directorio myExternal/es ejecutar 'svn up' desde la raíz del repositorio. Sin embargo, esto también hará que se retiren todos los contenidos de las sucursales /, lo cual es inaceptable (tenemos muchos desarrolladores que necesitan obtener myExternal/added en su copia de repos, y no pueden tener todos ellos revisando gigabytes de ramas innecesarias).

He intentado 'svn up --set-depth inmediates', pero parece que no obtiene los elementos externos. ¿Hay alguna manera de decirle a svn que busque myExternal/sin buscar todas las ramas /?

Usando SVN 1.7.

Respuesta

4

Sí, ese es el problema conocido de la subversión externals are not created unless depth=infinity.

Creo que no hay forma de rediseñar la estructura de su directorio para que myExternal se adjunte no al repo sino a sus subcarpetas, p. configurado en /trunk y cada carpeta en /branches.

O puede crear un script que va a buscar en un primer momento immediates de cesión temporal y luego obtiene externos establecidos en la cesión temporal (que se puede obtener por las propiedades de cesión temporal de lectura: SVN SVN propget: externos).

6

Los externos son solo check-in para que pueda verificarlos manualmente.

También podría usar un comando como este. Puede que tenga que modificarlo un poco si sus externos están en un formato diferente.

svn propget svn:externals | awk '{print $2, $1}' | xargs -L1 svn co 
+1

'svn propget svn: externals | xargs -L1 svn co' en mi caso funcionó –

+0

svn propget svn: externals | sed-e 's//. \ //' | sed-e 's/\' // g '| xargs -L1 svn co-trabajado para mí – TCS

+0

Debería haber aclarado que ya estábamos simplemente revisando manualmente. Mi intención era ver si había una manera nativa de hacer esto con el 'pago inicial' inicial – erich8

Cuestiones relacionadas