Estoy tratando de configurar svn:externals
con TortoiseSVN en una máquina con Windows. Tengo dos proyectos y ya se han creado ambos repositorios en la misma máquina local.Configuración de SVN: Externo con TortoiseSVN en Windows
La estructura actual tiene este aspecto. Creé repoA
, repoB
para repositorios y workA
y workB
para directorios de trabajo (cajas).
repositorios
Z: \ repos \ REPOA
Z: \ repos \ repoB
directorios de trabajo
Z: \ Projects \ workA \ trunk \ core.php
Z: \ Proyectos \ Worka \ trunk \ lib \ lib01.php
Z: \ Projects \ workB \ trunk \ core_mod.php
Z: \ Proyectos \ workB \ trunk \ lib \
(hay tags
y branches
carpetas, pero se omiten mantener la cuestión simple.)
lo que me gustaría lograr es el archivo (s) bajo workA\trunk\lib\
en este caso lib01.php
para ser copiado automáticamente en el directorio workB\trunk\lib\
.
Para configurar esto, lo que he hecho es el siguiente:
- marchamos
workA
y le asignó arepoA
y desprotegidoworkB
y le asignó arepoB
- Comitted la carpeta
workA\trunk
entonces elrepoA
está actualizado. - En oreder para asignar una ubicación de importación para
workB\trunk\lib
, haga clic derecho en la carpetaworkB
y elijaTortoiseSVN -> Properties
. - hecho clic en
New -> Externals
y hace clicNew...
mecanografiadas
./trunk/lib
en el campoLocal path
formulario. Para el campoURL
, tipeadofile:///Z:/repos/repoA/trunk/lib
. Al presionar el botón...
, se abrió el repo-browser y ayudó a seleccionar la carpeta de destino.hecho clic
Ok
un par de veces para cerrar la ventana de configuración. Supuse que la configuración externa estaba hecha.- crea un archivo,
Z:\Projects\workB\trunk\core_mod.php
- se pulsa sobre
Z:\Projects\workB\trunk\
y seleccionadosSVN Comit
al Comit elworkB
arepoB
.
Esperaba que en este punto, el lib01.php se importaría automáticamente en la carpeta Z:\Projects\workB\trunk\lib
pero no se copió nada. También probé SVN Update
haciendo clic derecho en la carpeta workB\trunk
. Pero la carpeta workB\trunk\lib
se mantuvo vacía.
Sospecho que la ruta relativa ./trunk/lib
debe confundirse. No lo sé. Si puede señalar lo que estoy haciendo mal, lo agradecería.
actualización
6a - Observar cambió de Trabajo Copia WorkB a repo
Este fue un punto ciego para mí. Hice clic derecho en Z:\Projects\workB
y seleccioné SVN Commit...
y me dio el siguiente error.
Después de hacer clic en el botón Aceptar de inmediato que tiene una ventana de diálogo que pregunta si desea actualizar la carpeta y hacer clic en OK. Entonces TortoiseSVN comenzó a actualizar Z:\Projects\workB
y obtuve este error. Pero después de esto, cuando volví a comprometerme Z:\Projects\workB
, se realizó sin ningún error.
("tronco/lib" en su caso habrá más de balas, supongo).
Gracias, cuando vuelve a seleccionar la carpeta de Property
workB
y hacer clic en el botón Edit
para la svn:externals
, TortoiseSVN ajusta automáticamente ./trunk/lib
-trunk/lib
. Ahora está configurado para ser así.
6b - prueba con repobrowser en RepoB (justo manera más rápida), que es la definición correcta
hace clic derecho en Z:\repos\repoB
y eligió TortoiseSVN -> repo-browser
y navegado hasta la carpeta tronco. Se ve de la siguiente manera. ¿Se ve bien? Realmente no lo sé ya que nunca había trabajado en esta tarea. La carpeta lib en la carpeta troncal está vacía en el repo-navegador.
La carpeta Z:\Projects\workB\trunk\lib
sigue vacío. El mensaje de error sugiere reubicar 'Z: \ Projects \ workB', pero no estoy seguro de lo que significa.
Repo-Broswer mostrar dos carpetas lib ** ** dentro del tronco - uno externo y uno real (no es necesario) - es un problema. Pruebe la verificación nueva del tronco (completamente recursivo, con elementos externos) para ver el estado actual del repositorio. –
'Repo-Broswer muestra dos carpetas de lib dentro del tronco, una externa y otra real (no es necesario) - es un problema. - Esto fue . Gracias. Eliminé la carpeta real 'lib' en el navegador repo,' Z: \ Projects \ workB \ trunk \ lib', y realicé 'SVN Update' en' Z: \ Projects \ workB'. Ahora 'Z: \ Projects \ workB \ trunk \ lib \ lib01.php' se creó automáticamente. Este fue un viaje realmente largo para resolver. – Teno