Как отменить последнее коммит в git

По ошибке я сделал git add . и git commit в ветке develop. Но, к счастью, я не делал git push.

Итак, я хотел вернуть его обратно в исходное состояние.

Я пробовал git reset --soft и git reset HEAD --hard, но похоже, что я испортил его.

Как это исправить? Я хочу вернуться в исходное состояние и, возможно, сохранить изменения кода.

Ответ 1

Я думаю, вы еще не испортились. Попробуйте:

git reset HEAD^

Это приведет к тому, что dir будет указан до того, как вы сделаете фиксацию, HEAD^ означает родительский элемент текущей фиксации (тот, который вам больше не нужен), сохраняя при этом изменения (нестационарные).

Ответ 2

Попробуйте просто reset last commit

git reset --soft HEAD~1