2010-08-04 13 views
5

Aquí tengo un repositorio mercurial/hg del proyecto perl con muchos módulos. Ahora, me he dado cuenta de que algunos de los módulos, una rama de módulos, ya no encajan en este proyecto, pero serían más adecuados en otro proyecto.mercurial: ¿"Clonación" de un solo archivo de un repositorio a otro?

Entonces, ¿es posible "clonar" estos módulos del repositorio1 en el otro repositorio2 manteniendo el historial de revisión de estos módulos y al mismo tiempo marcar los módulos en el repositorio1 como "eliminados"?

Creo que es posible con una serie de pasos. Pero creo que clonar todo el repo1 y luego eliminar todos los archivos innecesarios desordenaría mi nuevo repo2 con un montón de historial de revisiones no relacionadas. Aún así, como entiendo los comandos "clonar" y "extraer", ninguno de ellos es adecuado para clonar solo una porción de otro repositorio, ¿verdad? ¿O es posible "mover" un archivo de un repositorio a otro? Como yo lo veo, esa es la analogía de lo que quiero hacer ...

Respuesta

5

¡Absolutamente! Eche un vistazo a la extensión Convert, específicamente la sección Mercurial-to-Mercurial que debería hacer exactamente lo que usted desea.

Después de haber escindido esos módulos, puede utilizar hg forget, hg remove para sacarlos de su repositorio original, o incluso el uso hg convert de nuevo para crear un nuevo repositorio sin ellos.

+0

La sección Mercurial-Mercurial es exactamente lo que necesito. Gracias! – isync

Cuestiones relacionadas