2012-08-09 10 views
5

He clonado un repositorio SVN en un repositorio Git, y solo quiero los últimos commits comenzando desde f3a5b2a commit. Quiero conservar los cambios, pero pueden ser parte de ese compromiso f3a5b2a, quiero deshacerme del historial innecesario porque ya no lo necesito y tengo el viejo repositorio SVN respaldado.Caída anterior ¿Git se compromete desde la historia?

Hay commits que se extienden a lo largo de 7 años, solo quiero los commits comenzando en f3a5b2a.

+0

Hace un tiempo me formulé una pregunta similar - http://stackoverflow.com/questions/495345/git-removing-selected-commit-log-entries-for-a-repository - El comando que probablemente esté buscando es '$ git rebase' – xk0der

+0

@ xk0der Leí esa pregunta, pero depende del modo interactivo y no hay manera de que lo haga. Debe haber alguna otra forma. – Tower

+0

Mira algunas de las respuestas debajo de la que acepté, especialmente el interruptor '--onto' parece ser lo que debería ayudarte. (1) http://stackoverflow.com/a/495526/29096 (2) http://stackoverflow.com/a/3705152/29096 - y un par más en el hilo. – xk0der

Respuesta

7

He encontrado una mejor manera de clonar un repositorio SVN y soltando mayores comete:

git svn clone -r1234:HEAD https://asdasd/ targetPath 

Básicamente clona el repositorio SVN dada, a partir de la revisión 1234 hasta que llega a la cabeza.

+0

Impresionante :) - muy útil. – xk0der

Cuestiones relacionadas