¿Git elimina la información del historial de otros repositorys?

Intento explicar mi problema Bevor 2015 teníamos un gran repository SVN, entonces alguien pensó que sería bueno mover o copyr algunos proyectos en un repository más pequeño. Ahora comenzamos a pasar de SVN a GIT y al convertir el repository y el historial en GIT comienza el día en que los proyectos se mueven o se copyn. Debido a que también necesitamos la historia anterior, busqué y encontré que sería posible fusionar el historial del nuevo repository con el historial del repository anterior. Para esto utilizo "git replace" para replace la primera input del historial en el nuevo repository con una input anterior al historial del gran repository, que fue la fuente de la nueva historia. Este trabajo y yo solo perdimos la primera input del nuevo repository y el último antes de que el proyecto se cambie de la historia anterior. Pero ahora tengo la historia de todos los proyectos que alguna vez estuvieron en el gran repository y el repository de GIT ahora es muy grande. ¿Hay alguna manera de eliminar el historial y los proyectos que no estarán en este repository? ¡Gracias por tu ayuda!

Sí. Por lo general, eliminar cosas de un repository es muy problemático, pero como acabas de empezar a usarlo (por lo que probablemente haya pocos clones o references a las confirmaciones actuales) esa es probablemente tu mejor opción.

Podrías usar rebase --interactive y editar el historial de la manera que quieras, pero en realidad, como acabas de empezar a usar ese repository, probablemente deberías aprovechar la posibilidad de eliminar ese replace (que es un truco potencialmente problemático).
Por lo tanto, probablemente debas comenzar nuevamente a reconvertir el repository tomando solo (y todas) las confirmaciones que desees.

Si no estás familiarizado con estas cosas, es mejor que encuentres a alguien que realice la conversión, ya vas a tener tus errores estándar en tu process de aprendizaje de git, si también comienzas con un repository en mal estado. estás buscando una experiencia infernal en los próximos meses y años.


Si, por otro lado, ya has hecho un trabajo nuevo y significativo en el repository de git y no quieres cambiar ese historial, de acuerdo, guárdalo y vuelve a convertir solo el historial anterior.
A continuación, elimine el replace anterior y agregue uno nuevo para vincular el historial reconvertido.
Tenga en count que no necesita perder ningún compromiso al usar replace . Mírelo mejor o pídale a alguien con más experiencia que lo haga. No quiero hacer aquí una extensa explicación paso a paso, pero básicamente tiene que replace la primera confirmación de la parte más reciente de la historia con una copy idéntica de la misma, excepto con su padre editado para ser el último ( más reciente) cometer el historial anterior (esto después de importar los objects del historial anterior en el repository más nuevo, por supuesto).