2015-06-28 3 views
0

Я намеревался выполнить сброс - до последней фиксации, которую я сделал, но я случайно вернулся к фиксации до этого. В любом случае, чтобы отменить это.Undo git reset --hard

Это была последовательность событий: 1. Я вытащил из общего репо и совершил некоторые изменения и совершил их (SHA1). Я сделал больше изменений и сделал их тоже (SHA2). Затем я сделал несколько изменений, но никогда не совершал их, я просто хотел вернуться к SHA2. Вместо этого я возвращаюсь к SHA1. Теперь все мои изменения потеряны. Можно ли отменить последний сброс и перейти на SHA2?

Что я имею в виду, когда я сделал журнал GIT:

"SHA2" - HEAD 
Jun 26 
some comment -1 

"SHA1" - Origin 
    Jun 25 
    some comment -2 

I сброса в SHA1 вместо к УВХ2. Могу ли я отменить мой сброс --hard

+0

Если у вас все еще есть значение «SHA2», вы можете просто просто сбросить его прямо : 'git reset --hard SHA2'. – poke

+0

Я пытался это сделать, но я до сих пор не вижу никаких моих ранних изменений. Они, кажется, были потеряны. – Hitch

+0

С каких ранних изменений вы ссылаетесь? Неувязшие, которые вы сделали после SHA2? Незавершенные изменения отбрасываются при выполнении 'git reset -hard' и, если вы хотя бы добавили их в индекс, нет способа вернуть их. – poke

ответ

0

Я бы посмотрел git reflog. Он отслеживает многие ваши локальные изменения и может быть использован для восстановления потерянных коммитов (при условии, что очистка не произошла)

Смежные вопросы