Как отменить откат Git - PullRequest
8 голосов
/ 06 июля 2011

Я хотел откатиться до последнего коммита после большой ошибки, но мне удалось откатить слишком честно.Коммит, который я хотел восстановить, не появляется, когда я ввожу 'git log' в bash (я полагаю, потому что его больше нет в истории).Можно ли как-нибудь восстановить последний коммит по дате?

Я также использую eGit в eclipse для того же проекта, если это облегчает задачу.Спасибо.

Ответы [ 2 ]

21 голосов
/ 06 июля 2011

Если вы в порядке с командной строкой, зайдите в репозиторий, выполните git reflog и получите коммит, на который вы хотите «откатиться», и выполните git reset --hard <commit>

Вы также можете выполнить git reset --hard HEAD@{1}, а затем вернуться к egit и откатиться до нужного коммита.

2 голосов
/ 06 июля 2011

Я считаю, что, как правило, лучше вносить изменения вовремя, а не назад.

Подход Git заключается в «возврате» коммита.Когда вы возвращаете коммит, вы извлекаете в свой рабочий каталог инверсный соответствующего коммита.Затем вы добавляете и фиксируете это, и вы только что сделали НОВЫЙ коммит, который фиксирует «отмену» коммита, который вы возвращаете, И он оставляет в истории запись о том, что такое произошло, так что если вы хотите отменитьтвое удаление, это легко сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...