C'è un modo per ripristinare o annullare git pull in modo che i miei sorgenti / repository tornino al vecchio stato che era prima di fare git pull? Voglio farlo perché ha unito alcuni file che non volevo fare, ma unendo solo altri file rimanenti. Quindi, voglio recuperare quei file, è possibile?
EDIT: voglio annullare git merge per chiarimenti. Dopo aver visto alcune risposte, l'ho fatto
git reflog
bb3139b... HEAD@{0}: pull : Fast forward
01b34fa... HEAD@{1}: clone: from ...name...
Ora cosa dovrei fare? Fare git reset --hard
è OK? Non voglio rovinarlo di nuovo, quindi chiedere passaggi dettagliati?
git reflog
mostrerà tutto ciò che è stato fatto con Git. C'è una preoccupazione che git reset --hard [sha1 of something from reflog]
ripristinerà tutto ciò che viene mostrato reflog
, che a volte non è obiettivo, ad es. vuoi ripristinare l'unione sul ramo principale estratto dall'origine con dati errati (succede) e dopo quell'unione hai lavorato su altri rami. reflog
mostrerà ogni chage su altri rami. Ma git checkout master
e git reset --hard [SH1 of commit on master branch just before merge]
ripristinerà unico ramo master corrente rimozione merge tirato di origine.
git reset --hard 01b34fa
in questo caso avresti potuto faregit reset --hard HEAD^
quali ripristini a un commit prima di HEAD.