2011-06-01 19 views
8

Soy nuevo en Mercurial y en el control de versiones en general, así que estoy seguro de que esta es una pregunta bastante básica, pero hasta ahora no he podido encontrar la respuesta.¿Puedo trasladar mi directorio de trabajo Mercurial a otra ubicación?

Estoy trabajando en un pequeño proyecto que está bajo el control de la versión Mercurial. El proyecto y el repositorio .hg se encuentran actualmente en mi unidad local (C: \ MyProject.hg); sin embargo, me gustaría mover todo el lote a otra ubicación (en este caso, una unidad de red) que se respalda todas las noches. Me gustaría que esta nueva ubicación se convirtiera en mi directorio de trabajo.

Mi pregunta es, ¿puedo simplemente copiar el directorio MyProject (y por lo tanto el repositorio .hg) en la nueva ubicación y hacer que todo funcione como lo hacía en mi disco local? ¿O lo hace a través de comandos Mercurial (por ejemplo, clonar) para que Mercurial sepa sobre el cambio de ubicación?

Respuesta

10

Usted puede hacer una copia normal de la carpeta, pero si va a seguir utilizando la versión local, debe hacer la copia con el hg clone, para que pueda hacer un hg pull o hg push para sincronizar las versiones. Todavía puede empujar y tirar si no usa hg clone, pero lo hace un poco más fácil.

4

puede mover completamente su versión local a una unidad de red y hacer que su nueva versión "local". Hace no tiene que dejar que Mercurial sepa que su directorio principal (proyecto) se está moviendo.

Como otra respuesta mencionada, puede ser beneficioso para usted mantener su proyecto localmente y crear otro repositorio en la unidad de red (uno que no tenga un directorio de trabajo) clonando el que está en su máquina local para la unidad en red. De esta forma, puede mantener su propio repositorio localmente y no tener que cambiar nada, al mismo tiempo que realiza una copia de seguridad de su repositorio en la unidad de red. Puede configurar un trabajo cron nocturno en su máquina (push) o en la máquina de red (pull) para que permanezcan sincronizados.

3

La opción más fácil es simplemente mover esa carpeta a su unidad de red. En el directorio de trabajo clonado simplemente actualice las rutas encontradas en el archivo .hg/hgrc (ubicado en la carpeta .hg/si no fue claro. En su repositorio clonado verá una ruta predeterminada como esta ...

 
[paths] 
default = c:\MyProject 

ese camino debe cambiarse a su nueva ubicación. Además, si hay otro camino que puede agregar otra como esta ...

 
[paths] 
default = c:\MyProject 
Bitbucket = https://[email protected]/MyProject 
+0

Gracias por todas sus respuestas chicos. es como sospechaba que podía simplemente copie el directorio. Además, no estaba al tanto de la necesidad de actualizar la ruta predeterminada, así que gracias andy9d! – gregorE

+0

ACTUALIZACIÓN: Acabo de buscar el archivo .hg/hgrc en la carpeta .hg y parece que no lo tengo. ¿Hay otras ubicaciones en las que se pueda almacenar este archivo? – gregorE

+0

Si el archivo no está allí, créelo. Cuando clona un repositorio, se crea para usted y se agrega la ruta de acceso predeterminada, pero no existirá por defecto en un repositorio nuevo. Además, +1 para mencionar el elemento de rutas en el archivo hgrc ... A menudo uso esto para establecer un nuevo destino de inserción. – icabod

Cuestiones relacionadas