Aquí está la situación: el desarrollador Foo creó un repositorio hg de nuestro repositorio svn. El repo hg de Foo era solo un clon superficial del tronco en svn (sin ramas svn, etiquetas, etc. y la historia estaba incompleta [alrededor de 100 conjuntos de cambios]). Developer Bar hizo lo mismo, pero clonó todo el repositorio svn incluyendo todo el historial, las ramas, las etiquetas, etc. Tanto Foo como Bar han hecho un desarrollo detallado en sus repositorios.Reparar en Mercurial: ¿cómo uno trae dos clones de svn independientes juntos?
Hay un antecesor SVN común en ambos repositorios, pero cada repositorio hg tiene un número de versión diferente para él. Me gustaría reparar los cambios de Foo del ancestro común en el repositorio de Bar. He aquí un diagrama de lo que estoy buscando:
cesión temporal de Foo:
C'-D'-E-F---G
\ /
H-I
de barra de recompra:
...A-B-C-D-J-K---L
\ /
M-N
C, C 'y D, D' tienen el mismo contenido, pero números de versión diferentes & comentarios.
El objetivo:
...A-B-C-D--E-F---G
\ \ /
\ H-I
\
J-K---L
\ /
M-N
me he quedado sin ideas sobre cómo hacer que esto suceda. Intenté convertir --splicemap splice.map [archivo splice.map contenía E D] (no hice nada). Clone -f logró obtener todo en un repositorio, pero parecen ser árboles independientes. Después -f clon, he intentado rebasar --source E --dest D --detach, pero acaba de estrellarse :(
ideas?
Soy consciente de alterar la historia invalidará el clon de cualquiera de los repositorios , esto no es un problema en este caso. Todos los usuarios serán re-clonación a partir del resultado de este esfuerzo.
Cuando intento esto, no lo hace diciendo "la revisión del mapa de empalme no se está convirtiendo, ignorando" –
simplename