2009-03-19 17 views
72

Estoy buscando un tutorial sucinto y bien escrito sobre el uso de svn: externals.¿Cómo empezar a usar svn: externals?

que ya saben cómo usarlos de forma básica a mí mismo, pero quiero un buen artículo que pueda vincular a al contestar preguntas como ésta que surgen recientemente:

What to do with multiple projects depending on the same source?

I' Lo hago yo mismo, pero no los uso con la frecuencia suficiente como para querer sacar mi cuello y escribir un tutorial sobre él. Google fue sorprendentemente inútil con este tema.

Respuesta

40

Estas son algunas secciones sobre él en el svnbook/manual de TortoiseSVN:

This es la página svnbook en svn: externos. Es el recurso más útil sobre el tema.

This one explica cuatro formas de incluir subproyectos en el flujo de trabajo (y en el proceso falta una quinta: enlaces simbólicos).

Y this last one es una página específica de TortoiseSVN sobre cómo importar cosas en un repositorio (no relacionado directamente con svn: externals).

16

En caso de que no se desprende de los enlaces proporcionados por encima de, la forma de establecer la propiedad svn:externals que está ligado a una revisión particular (pinning), aquí está:

svn propset svn:externals "plugins -r12345 https://svn.example.com/common/plugins" extras 

Eso se hará un subdirectorio plugins en el directorio extras y vincúlelo a la revisión 12345 de la URL SVN externa https://svn.example.com/common/plugins.

Hay un artículo de Red Bean que sugiere usar propedit ya que svn:externals puede ser un valor de varias líneas. El ejemplo anterior se cambiaría de la siguiente manera para usar propedit.

svn propedit svn:externals extras 

A continuación, agregaría una línea para cada enlace externo siguiendo el mismo formato que se muestra arriba para el valor.

0
root/repo1/proj/base/common/log.c 
root/repo1/proj/base/common/log.h 
root/repo1/proj/base/client 

root/repo2/proj/test/base 

como demostración arriba, queremos copiar 2 archivos y 1 directorio para repo2

Paso 1

directorio:/home/conector/repo2/proj/

cd /home/jack 

Step2

svn propset svn:externals "../repo1/proj/base/client proj/base/client" repo2 

algo como: ln repo1/proj/base/client repo2/proj/base/client

Paso 3

export SVN_EDITOR=vim 

Paso 4

svn propedit svn:externals repo2 

espectáculos vim:

../repo1/proj/base/client proj/base/cliente

Paso 5: añadir otros dos archivos

../repo1/proj/base/client proj/base/client 
../repo1/proj/base/common/log.c proj/base/common/log.c 
../repo1/proj/base/common/log.h proj/base/common/log.h 
Cuestiones relacionadas