Отменить использование filter-branch в Git

Я использовал git filter-branch и что-то напортачил и случайно переписал разделы истории, которые мне не хотелось. Я пытался изменить одно имя и случайно изменил каждый коммит (а не только коммит с определенным именем).

Я знаю, что «git filter-branch» хранит резервную копию в refs / original, но я не знаю, как вернуть основную ветку к этой старой версии. Какая команда git для этого?


person Jonathan Sternberg    schedule 23.04.2012    source источник


Ответы (1)


Если вы знаете идентификатор фиксации, к которому пытаетесь вернуться, вы можете использовать

$ git checkout master
$ git reset --hard <commit id>
person meagar    schedule 23.04.2012
comment
Идентификатор фиксации должен быть доступен в refs / original. - person Nico Erfurth; 24.04.2012
comment
Синтаксис рефлога был разработан для подобных ситуаций. git checkout master @ {1} git branch -f master - person jthill; 24.04.2012