A menudo trabajo con Mercurial manteniendo una tienda local de mis clones aguas arriba, y luego sólo la clonación de nuevo in situ para mi entorno de trabajo real:¿Cómo hacer un clon local sin tirar subrepos nuevamente?
$ cd /clones
$ hg clone ssh://external-repo.example.com/some/repo/path/foo
$ cd ~/Development
$ hg clone /clones/foo
Esto es particularmente útil para mí porque a menudo quieren hacer nuevos clones en aviones, etc., donde no tengo acceso a internet. Sin embargo, esto no funciona cuando el clon original contiene subrepos: la presencia del archivo .hgsubstate
significa que hg
siempre irá a Internet en lugar de capturar la revisión clonada local (incluso si son mismos). ¿Hay alguna forma de hacer que un clon local copie los archivos sin tener que salir a internet?
This question tiene una respuesta que probablemente trabajar, pero parece muy desafortunado para la gestión a largo plazo (eliminando el archivo .hgsubstate
en el clon de /clones/
, y luego hacer los clones locales de eso).
Gracias, esto es exactamente lo que quiero, probablemente sea demasiado difícil cambiar todos nuestros repositorios existentes a "triviales", pero los usaré para los nuevos. Afortunadamente, subpaths resolverá mi problema para los existentes. –