Eclipse: cómo exportar el historial local a un sistema SCM real como Git o SVN

Tengo una eclipsar proyecto que comenzó como un pequeño truco privado, rápido y sucio. No me molesté en usar un sistema SCM (gestión de código fuente) real como Git o SVN, ni siquiera localmente. Lo que tengo en cambio es el valor de unos días de Historia Local, una característica de Eclipse lista para usar. Como tantas veces, el proyecto creció y quiero compártelo incluyendo la historia, porque la historia muestra una gran cantidad de pasos de refactorización que son útiles como escaparate para enseñar a alguien más sobre refactorización, código limpio, etc.

Ya sé que puedo recuperar manualmente versiones antiguas archivo por archivo y migrarlas manualmente, por ejemplo, a un repositorio de Git, realizando cambios uno por uno y archivo por archivo. Pero lo que realmente me interesa es:

  • ¿Puedo restablecer todo el proyecto (no solo un archivo) a una fecha determinada usando el Historial local?
  • ¿Hay alguna manera de exportar ciertas (o todas) instantáneas del historial del proyecto local, de modo que pueda enviarlas a Git instantánea por instantánea?
  • ¿Hay alguna opción (o una herramienta externa, script, etc.) mediante la cual pueda migrar automáticamente el historial local de un proyecto a un sistema SCM real como Git (preferido) o SVN? También estaría bien si la herramienta creara muchas instantáneas completas del proyecto en subcarpetas nombradas por marcas de tiempo.

Descargo de responsabilidad: Sí, sé que debería haber usado Git desde el principio. Me hubiera costado solo tres minutos configurar un repositorio local, etc. Pero... PERO. Sabes. ;-)

preguntado el 12 de junio de 12 a las 12:06

2 Respuestas

No creo que lo haya, pero tenga en cuenta que la tarea no debería ser demasiado tediosa.

Haga una copia de su proyecto antes de comenzar, solo por seguridad y luego:

git init
(revert to snapshot 1)
git add .
git commit -m "First snapshot commit"
(revert to snapshot 2)
git add .
git commit -m "Second snapshot commit"

Lavar, enjuagar, repetir.

Si solo tiene unas pocas docenas de instantáneas, no debería tomar más de una hora, lo que probablemente sea mucho menos de lo que tomaría encontrar una solución programática.

Respondido el 12 de junio de 12 a las 15:06

Como dije, sé que puedo hacerlo manualmente, pero con la carga adicional de que no existen instantáneas por proyecto, solo por archivo, por lo que siempre tengo que verificar (n) historiales de archivos si (n) es el total número de archivos en mi repositorio local. Lástima, pero no fui muy optimista desde el principio... - kriegaex

Desafortunadamente, la respuesta es "no" a todas sus preguntas. Al menos, usando la funcionalidad estándar incorporada de Eclipse; siempre existe la posibilidad de que alguien haya escrito un complemento que satisfaga sus necesidades, pero en este caso me sorprendería. Consulte Eclipse Marketplace (que se encuentra bajo el Help menú).

Respondido el 12 de junio de 12 a las 15:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.