#git
#git
Вопрос:
Допустим, мой текущий журнал git
фиксация3
фиксация2
фиксация1
Я сбросил заголовок до commit2.
Теперь я хочу вернуться к commit3, но я забыл sha-1 commit3, поэтому я хочу посмотреть журнал, но в «git log» будут отображаться только commit2, commit1, мой вопрос в том, как выполнить сброс до commit3 или позволить журналу показывать также commit3 сейчас?
Спасибо
Ответ №1:
Используйте git reflog
, чтобы найти старую ссылку и передать ее git log
напрямую. Обратите внимание, что reflog периодически очищается, и старые коммиты в конечном итоге будут удалены, если только они не являются частью ветки — если вы хотите отменить коммит, но оставить его в истории, используйте git revert
для отмены их, не удаляя из истории.
Комментарии:
1. Или, если она не опубликована, просто создайте другую ветку в коммите, чтобы сохранить.
Ответ №2:
Команда
git reflog
покажет вам список SHA, которые были HEAD. Другими словами, он показывает список коммитов в том порядке, в котором они были извлечены. В этом списке вы также увидите синтаксис HEAD@{1}
, HEAD@{2}
и т.д. Это способ обратиться к предыдущим главам.
В вашем случае git checkout HEAD@{1}
следует проверить commit3, потому что это была глава перед текущей главой.
Ответ №3:
Есть два способа :-
Классика : git reflog
Общая картина 🙂 журнал git —график —оформление —oneline