Después de trabajar durante varias semanas con media docena de ramas y fusiones diferentes, tanto en mi computadora portátil y mi escritorio como en mi hogar, mi historia se ha vuelto un poco intrincada. Por ejemplo, acabo de buscar, luego fusioné el maestro con el origen/maestro. Ahora, cuando hago git show-ramas, la salida es el siguiente:cómo usar git rebase para limpiar una historia intrincada
! [login] Changed domain name. ! [master] Merge remote branch 'origin/master' ! [migrate-1.9] Migrating to 1.9.1 on Heroku ! [rebase-master] Merge remote branch 'origin/master' ---- - - [master] Merge remote branch 'origin/master' + + [master^2] A bit of re-arranging and cleanup. - - [master^2^] Merge branch 'rpx-login' + + [master^2^^2] Commented out some debug logging. + + [master^2^^2^] Monkey-patched Rack::Request#ip + + [master^2^^2~2] dump each request to log ....
me gustaría limpiar esto con un git rebase. Creé una nueva rama, rebase-master, para este propósito, y en esta rama intenté git rebase < common-ancestor >. Sin embargo, tengo que resolver muchos conflictos, y el resultado final en branch rebase-master ya no coincide con la versión correspondiente en master, ¡que ya ha sido probado y funciona!
Pensé que había visto una solución a esto en algún lado pero ya no puedo encontrarlo. ¿Alguien sabe como hacer esto? ¿O desaparecerán estos complicados nombres de las referencias cuando empiece a eliminar ramas innecesarias con las que ya me he fusionado?
Soy el único desarrollador de este proyecto, por lo que no habrá nadie más que se vea afectado.
;-) Nota filosófica: La historia se complica. Eso es hecho de la vida. Superalo. –