2012-10-19 8 views
16

ho eseguito la seguente riga:Ho appena distruggere il mio lavoro in modo non corretto utilizzando git rebase

git rebase -i dev --onto master 

ho pensato che questo avrebbe tagliato mio ramo dev e incollarlo sulla parte superiore del mio ramo principale. E il -i mi permetterebbe di far crollare i changeset.

Ma quando ha richiamato l'editor, non ho visto nessuno dei changeset. Tutto quello che ho visto era "noop". Quindi l'ho appena lasciato. E poi guardo la mia storia git, tutti i miei cambiamenti sono andati. Il mio ramo dev è nello stesso posto in cui si trova il mio padrone!

Qualcuno può aiutarmi a recuperare? Grazie!

risposta

31

Git rende faticosamente difficile perdere il lavoro.

Run:

git reflog 

che cercare il commit che era appena prima che il rebase

controllarlo fuori

git checkout <sha> 

Guardatevi intorno, è la versione che si voleva recuperare ?

Se è così, creare un ramo qui

git checkout -b mybranch 
+0

grazie mille! Ha funzionato. – Aishwar

+0

Sono contento di essere stato in grado di aiutarti! – Christoph