Posterior a de esta extensa búsqueda de información pudimos resolver esta problema que suelen tener muchos de nuestros usuarios. Te ofrecemos la respuesta y nuestro deseo es serte de mucha ayuda.
Solución:
Dado que el servidor Apache Subversion se moverá a este nuevo alias de DNS: sub.someaddress.com.tr
:
-
Con Subversion 1.7 o superior, use
svn relocate
. Reubicar se usa cuando cambia la ubicación del servidor SVN.switch
solo se usa si desea cambiar su copia de trabajo local a otra rama u otra ruta. Si utiliza TortoiseSVN, puede seguir las instrucciones del Manual de TortoiseSVN. Si utiliza la interfaz de línea de comandos de SVN, consulte esta sección de la documentación de SVN. El comando debería verse así:svn relocate svn://sub.someaddress.com.tr/project
-
Continúe utilizándolo
/project
dado que el contenido real de su repositorio probablemente no cambiará.
Nota: svn relocate
no está disponible antes de la versión 1.7 (gracias a ColinM por la información). En versiones anteriores, usarías:
svn switch --relocate OLD NEW
Comparar la URL antes y después puede darle tranquilidad:
svn info | grep URL
URL: svn://svnrepo.rz.mycompany.org/repos/trunk/DataPortal
Relative URL: (...doesn't matter...)
Y verificando su versión (para ser> 1.7) para asegurar, svn relocate
es lo correcto para usar:
svn --version
Por último, agregando a lo anterior, si el cambio de URL de su repositorio también implica un cambio de protocolo, es posible que deba indicar el antes y después de la URL (ver también aquí)
svn relocate svn://svnrepo.rz.mycompany.org/repos/trunk/DataPortal
https://svngate.mycompany.org/svn/repos/trunk/DataPortal
Todo en una sola línea, por supuesto. A partir de entonces, tenga la buena sensación de que todo transcurrió sin problemas:
svn info | grep URL:
Si te apetece, un poco más de seguridad en ti mismo, la nueva URL del repositorio svn está conectada y funcionando:
svn status --show-updates
svn diff
En mi caso, el svn relocate
mando (así como svn switch --relocate
) falló por alguna razón (tal vez el repositorio no se movió correctamente, o algo más). Me enfrenté a este error:
$ svn relocate NEW_SERVER
svn: E195009: The repository at 'NEW_SERVER' has uuid 'e7500204-160a-403c-b4b6-6bc4f25883ea', but the WC has '3a8c444c-5998-40fb-8cb3-409b74712e46'
No quería volver a descargar todo el repositorio, así que encontré una solución. Funcionó en mi caso, pero en general puedo imaginar que muchas cosas pueden romperse (así que haga una copia de seguridad de su copia de trabajo o esté listo para volver a verificar todo el repositorio si algo sale mal).
La dirección del repositorio y su UUID se guardan en el .svn/wc.db
Archivo de base de datos SQLite en su copia de trabajo. Simplemente abra la base de datos (por ejemplo, en SQLite Browser), explore la tabla REPOSITORIO y cambie el root
y uuid
valores de columna a los nuevos. Puede encontrar el UUID del nuevo repositorio emitiendo svn info NEW_SERVER
.
Nuevamente, trate esto como un método de último recurso.