fAntonM
@fAntonM
веб-разработчик, дизайнер

Как увидеть предыдущий коммит без удаления текущего?

Здравствуйте!
Создал коммит Один, сделал изменения, создал коммит Два.
git log показывает два коммита ( Один и Два)

Задача: Хочу посмотреть состояние проекта на коммите Один и потом вернуться к коммиту Два ( текущему, последнему)
1. Набираю команду git checkout + хеш коммита Один
2. Вижу изменения в файле html по состоянию как было вначале ( коммит Один), т.е. все Ок - посмотрел, доволен-)
3. запускаю git log - вижу только один коммит номер Один.

Вопрос:
Почему удалился коммит Два?
Как смотреть прошлые состояния проекта и потом вернуться к текущему состоянию проекта ( последнему коммиту)?

Спасибо).
  • Вопрос задан
  • 285 просмотров
Решения вопроса 2
@Akela_wolf
Extreme Programmer
Он не удалился. Прочитайте Git Book, чтобы понимать что делает каждая команда

Вы сдвинули указатель HEAD на конкретный коммит. Теперь сделайте git checkout master (если основная ветка master, что скорее всего) и наблюдайте оба коммита.
Ответ написан
sergey-kuznetsov
@sergey-kuznetsov Куратор тега Git
Автоматизатор
А ещё можно попробовать команду
git checkout -
Это вернёт указатель HEAD в предыдущее состояние, в данном случае на вершину вашей ветки.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
fAntonM
@fAntonM Автор вопроса
веб-разработчик, дизайнер
Коллеги, подскажите еще.

Заметил, что если пытаюсь откатить к предыдущему коммиту через SHA-1
git checkout 09164b82059dbadcd75d82994e94d13eb63e210e1~
то получаю ошибку ( символ тильда в конце сам добавляется)
git checkout 09164b82059dbadcd75d82994e94d13eb63e210e1~
error: pathspec '09164b82059dbadcd75d82994e94d13eb63e210e1~' did not match any file(s) known to git


НО, если через git hist
git checkout e3ff6c0
то, все работает
Вопрос: значит ли это что чрез SHA-1 нельзя переключаться на коммит.
Какие еще есть простые команды для переключения на нужный коммит?
Спасибо).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы