git stash # jelenlegi állapot elmentése git rebase -i HEAD~2 # utolsó 2 commit, a fenti a régebbi git stash apply # állapot visszaállítása
git add ... git commit --amend
A C
a HEAD, az (F)
pedig a fájlok állása.
(F) A-B-C ↑ master
A C
commit eltüntetése.
git reset --hard HEAD~1
(F) A-B ↑ master
Most a B
a HEAD. A –hard
kapcsoló miatt a fájlok a B commit állapotára tértek vissza.
Mozgatott commitok listája:
git reflog
Meg kell keresni az eltüntetett commitot, majd:
git checkout -b someNewBranchName shaYouDestroyed
git reset HEAD~1
(F) A-B-C ↑ master
git reset --soft HEAD~1
Ez az indexet is meghagyja jelen állapotában. Ha ezután nyomunk egy commitot, akkor a C commitot kapjuk.