Как восстановить старые сообщения коммитов после случайного выхода из редактора vim? - PullRequest
0 голосов
/ 28 октября 2019

Использование: Windows 10, командная строка с командами git

Я использовал git (после этого урока: https://help.github.com/en/github/committing-changes-to-your-project/changing-a-commit-message), чтобы изменить некоторые старые сообщения, чтобы зафиксировать сообщения, чтобы добавить что-то к каждому. Я использовал команду: git rebase -i HEAD~10, и это показывало последние 10 коммитов. После присвоения каждого «пика» с «reword» нужным сообщениям коммита я не был уверен, как выйти и сохранить. Поэтому я решил нажатькрестик в командной строке, и когда я снова проверил git log в моем проекте, все последние 10 коммитов пропали. Как их восстановить?

Ответы [ 2 ]

0 голосов
/ 28 октября 2019
  1. Запустите git status, чтобы проверить, участвует ли ваша ветвь также в rebase процессе. Если у вас есть что-то вроде (develop|REBASE-i), вы просто выполняете git rebase --abort, чтобы прервать ребазинг.

  2. Если вы не участвуете в процессе rebase, вы можете восстановить данные из reflogПредположим, вы не удалили их. Используйте git reflog, чтобы найти хеш-код коммита. Затем восстановите его с помощью git reset --hard hashcode

0 голосов
/ 28 октября 2019

Откройте bash и снова перейдите в каталог репозитория. Вы должны быть в состоянии «rebase x / x», как указано синими словами в конце строки.

Затем вы можете использовать «git rebase --abort», чтобы вернуться к точке перед выполнениеминтерактивная команда rebase.

(Источник: https://git -scm.com / docs / git-rebase # Documentation / git-rebase.txt --- abort )

...