Исправлено случайное слияние после использования filter-branch

#git

#git

Вопрос:

Я следовал инструкциям здесь, чтобы удалить двоичный файл из моего репозитория с помощью filter-branch. В конце статьи говорится

 Make sure your collab uses rebase and not merge,
otherwise he will just reintroduce the file and the entire tainted history…
  

К сожалению, я прочитал этот фрагмент после того, как кто-то использовал merge в репозитории. Теперь в моей истории много повторяющихся коммитов:

 commit 16c3838a7338c639421b9f244b572b6e23c0c3f7
Author: foo bar <foo@bar.com>
Date:   Mon Nov 7 13:20:28 2011 -0800

    update todo

commit 213ae8da0af8e92afa9808c3b16cecf0e1cc7a0c
Author: foo bar <foo@bar.com>
Date:   Fri Nov 4 21:14:08 2011 -0700

    update todo
  

И двоичный файл был введен в эти повторяющиеся коммиты. Как мне избавиться от повторяющихся коммитов и двоичного файла?

Комментарии:

1. Если ничего не помогает, и вы еще не запустили сборку мусора, вы всегда можете отменить то, что вы сделали с помощью git reflog .

Ответ №1:

Просто вернитесь на одну ревизию назад и выполните перебазирование.