#git #commit #undo #git-amend
#git #фиксация #отменить #git-изменить
Вопрос:
Мне нужно отменить неправильный git commit —amend -m
- git зафиксировал без -m
- git commit —amend -m «сообщение о фиксации»
- git commit —amend -m «сообщение о фиксации» изменило мою предыдущую фиксацию вместо той, которую я должен был зафиксировать.
можно ли вернуться к шагу 1, не потеряв мой исходный хэш-код или код, который я должен был зафиксировать?
фиксация еще не нажата, кстати
Комментарии:
1. подсказка:
git reflog
Ответ №1:
git reset --soft "HEAD@{1}"
git commit -m "commit message"
HEAD@{1}
означает «найти, где HEAD
было до текущего фиксации». Вы можете убедиться, что это действительно предыдущий (неизмененный) коммит, используя git reflog
и git show "HEAD@{1}"
.
Комментарии:
1. Я сделал что-то не так. Я использовал терминал git внутри eclipse, затем переключился на обычную консоль git, и в итоге я потерял пару классов. Не уверен, что именно произойдет.