Git undo - убедитесь, что локальные файлы совпадают с предыдущим коммитом в Git - PullRequest
1 голос
/ 20 августа 2011

Пожалуйста, помогите, я новичок в Git - Что-то пошло не так в моем приложении, и я хочу восстановить предыдущий коммит - но ничего не работает - Независимо от того, что я делаю, я все еще вижу более поздние файлы на локальном жестком диске,Как я могу восстановить предыдущий коммит и убедиться, что это то, с чем я должен работать на моей локальной машине?

Ответы [ 3 ]

2 голосов
/ 20 августа 2011

Если вы еще не нажали, попробуйте git reset --hard HEAD.

В противном случае git revert HEAD создаст коммит, полностью противоположный тому, что вы сделали на своем последнем коммите.

Вы также можетеукажите хеш коммита вместо HEAD, чтобы отменить конкретный коммит.

1 голос
/ 20 августа 2011

Сброс до последнего коммита:

$ git reset --hard HEAD

Имейте в виду, что все незафиксированные изменения будут отклонены. Это вернет все файлы обратно в последнее зафиксированное состояние. HEAD также можно отредактировать, чтобы он соответствовал хэшу sha1 коммита, чтобы вернуться к конкретному коммиту.

Для получения дополнительной информации о сбросе, прочитайте это: http://progit.org/2011/07/11/reset.html

0 голосов
/ 22 августа 2011

Во-первых, вы можете временно отменить локальные изменения с помощью git stash.Вы можете получить эти изменения обратно с помощью git stash apply.

Когда проблема не в локальных изменениях, вы можете проверить более старые ревизии с помощью git checkout <commit-id>, где commit-id - это либо хеш коммита,название ветви или специальная ссылка, такая как HEAD ^.После этого у вас отдельная головка , что означает, что если вы хотите внести какие-либо изменения кода в извлеченную версию, вы должны создать новую ветвь из этой версии (git checkout -b <new-branchname>).

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