El error:
I git rebase -i --root
'ed mi rama, pensando ignorantemente pude reformular el primer commit que difiere del maestro (el GitHub para Windows vista predeterminada es la comparación de dominar, ocultando su totalidad).
Crecí una barba en Silicon Valley mientras más de 900 compromisos se cargaban en Sublime. Saliendo sin cambios, cargué mi batería y luego procedí a afeitarme, ya que todas las más de 900 confirmaciones individuales rebatieron indiferentemente, restableciendo sus tiempos de confirmación hasta ahora.
Determinado a vencer a Git y preservar los tiempos originales, eliminé este repositorio local y volví a clonarlo desde el control remoto.
Ahora había vuelto a agregar una confirmación de maestro innecesaria más reciente que deseaba eliminar, así que procedí así.
Agotar las opciones:
No quería git revert
hacerlo, crearía una confirmación adicional, dando a Git la ventaja.
git reset --hard HEAD
no hizo nada, después de comprobar el reflog
, el último y único HEAD
fue el clon: Git gana.
Para obtener el SHA más reciente, revisé el repositorio remoto en github.com: ganancia menor.
Después de pensar que git reset --hard <SHA>
había funcionado, actualicé otra rama a master y 1 ... 2 ... ¡puf! el compromiso había regresado: Git gana.
Regresando al maestro, es hora de intentarlo git rebase -i <SHA>
, luego elimine la línea ... en vano, es triste decirlo. " Si elimina una línea aquí, ESTE COMITÉ SE PERDERÁ ". Ah ... pasó por alto la nueva función troll n00b en las notas de la versión 2.8.3 .
La solución:
git rebase -i <SHA>
entonces d, drop = remove commit
.
Para verificar, verifiqué otra rama y listo, no se esconden, se comprometen a buscar / extraer del maestro.
https://twitter.com/holman/status/706006896273063936
Que tengas un buen día.
cherry-pick
ydelete
un solo comprometen a que pueden ocurrido hace un tiempo.