Mi estructura SVN actual:
Path: .
URL: svn://someaddress.com.tr/project
Repository Root: svn://someaddress.com.tr
Repository UUID: -------------------------------------
Revision: 10297
Node Kind: directory
Schedule: normal
Last Changed Author: ----
Last Changed Rev: 9812
Last Changed Date: 2010-12-20 17:38:48 +0100 (Mon, 20 Dec 2010)
Pero nuestro proyecto (de ahí el servicio SVN) funcionará en sub.someaddress.com.tr
lugar de someaddress.com.tr
(someaddress.com.tr será redirigido a otro lugar pronto).
Dado que es el servidor de desarrollo, no podía estar seguro de qué hacer. ¿Necesitaré usar svn switch
o svn switch --relocate
? Además, ¿tendré que cambiar svn root someaddress.com.tr o la rama del proyecto someaddress.com.tr/project ?
fuente
svn switch --relocate OLD NEW
switch
comando, toda la documentación que encontré en línea es para versiones más nuevas.Grepping en la URL antes y después puede darte tranquilidad:
Y verificar su versión (para ser> 1.7) para asegurarse de que
svn relocate
sea lo correcto para usar:Por último, agregando a lo anterior, si el cambio de la URL de su repositorio también implica un cambio de protocolo, es posible que deba indicar la URL anterior y posterior ( consulte también aquí )
Todo en una sola línea, por supuesto. A continuación, tenga la buena sensación de que todo salió bien:
Si le apetece, un poco más de seguridad en sí mismo, la nueva URL del repositorio svn está conectada y funcionando:
fuente
En mi caso, el
svn relocate
comando (así comosvn switch --relocate
) falló por alguna razón (tal vez el repositorio no se movió correctamente o algo más). Me enfrenté a este error:No quería volver a descargar todo el repositorio, así que encontré una solución. En mi caso funcionó, pero en general me imagino 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 el navegador SQLite), busque la tabla REPOSITORY y cambie los valores de las columnasroot
yuuid
por los nuevos. Puede encontrar el UUID del nuevo repositorio emitiendosvn info NEW_SERVER
.Nuevamente, trate esto como un método de último recurso.
fuente
Si desea comprometerse con un nuevo repositorio vacío, puede verificar el nuevo repositorio vacío y comprometerse con un nuevo repositorio remoto.
chekout un nuevo repositorio vacío no eliminará sus archivos locales.
intente esto: por ejemplo, URL de repositorio remoto: https://example.com/SVNTest
cd [YOUR PROJECT PATH] rm -rf .svn svn co https://example.com/SVNTest ../[YOUR PROJECT DIR NAME] svn add ./* svn ci -m"changed repo url"
fuente