En Git, digamos que cometí errores en mis compromisos, y quiero hacer la versión 3 confirma como la nueva versión. Si hago git checkout xxxx
, crea una nueva rama y parece que solo puedo fusionarla? ¿Podría hacer de esto la nueva "versión maestra"?Pagar la confirmación anterior y convertirla en una confirmación nueva
Quiero:
A-B-C-D-E
para convertirse en
A-B-C-D-E-F
donde F tiene exactamente el mismo contenido que C
Si uso git revert xxxx
en cambio, parece que definitivamente tendrá conflictos y necesito resolverlo manualmente
Lo que realmente quiero es solo hacer la confirmación anterior en algún momento de la nueva confirmación, independientemente de lo que haya en mi directorio de trabajo o la última confirmación.
¿Cómo voy a hacer esto?
Esto parece hacer lo que quiero. Gracias. Si quiero referirme a la versión de SHA-1 hash, ¿debería estar haciendo git checkout HEAD ~ XXXXX? – huggie
No, solo 'git checkout XXXXX'. 'rev ~ n' significa * n * revisiones antes de' rev'. – svick
El punto después de HEAD ~ 3 es importante. – bbuser