Come annullare un rebase interattivo se --abort non funziona?


127

Mi sono messo in una confusione tramite un rebase interattivo e ora desidero interromperlo. (vale a dire tornare al punto prima che venissi rilasciato in modalità rebase interattiva, nel mio caso via git pull --rebase.) Il modo per farlo sembra essere via git rebase --abort, ma questo non funziona:

$ git rebase --abort
error: Ref refs/heads/master is at 55b388c141b1485b1acd9e050dbeb0eb90ef2ee7 but
expected b918ac16a33881ce00799bea63d9c23bf7022d67
fatal: Cannot lock the ref 'refs/heads/master'.
Could not move back to refs/heads/master

Come posso uscire dalla modalità rebase interattiva e ripulire tutti i riferimenti ad essa? (ci git reset --hardriesce, ma non mi fa uscire dalla modalità rebase.)

Risposte:


83

Prova a seguire i consigli che vedi sullo schermo, e per prima cosa resetta HEAD del tuo master all'impegno che si aspetta.

git update-ref refs/heads/master b918ac16a33881ce00799bea63d9c23bf7022d67

Quindi, interrompere nuovamente il rebase.


43
Chiamare che un "consiglio" è il complimento più immeritato che mi viene in mente per chiunque sia responsabile del terribile Git UX
Marco Faustinelli,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.