Как полностью удалить/уничтожить коммиты из репозитория git?

На первый взгляд это может показаться таким же, как миллион подобных вопросов об изменении истории в репозиториях git, но я считаю, что мой случай немного отличается, и я не нашел решения, которое работает для меня.

У меня есть репозиторий git, и в какой-то момент один из программистов случайно каким-то образом внес код из другого репозитория, и вся история этого (ранее не связанного )репозитория теперь является частью моего журнала коммитов репозиториев..

Глядя на коммиты, становится совершенно ясно, какой именно коммит «принес» эту историю из ранее не связанного репо.

После указанной фиксации мы не трогали ни один из этих файлов.

Я хочу полностью уничтожить все эти несвязанные коммиты из моего репозитория. Я не возражаю, если мне придется делать это за фиксацией, но я хочу, чтобы мое репо действительно отражало только наш собственный код.

Если это поможет, структура будет примерно такой:

  • совершает после 1234 г.(более новый ), не трогайте неправильные файлы, представленные в 1234

  • совершить 1234-имеет пару файлов, связанных с нашей кодовой базой, а также сливается со всей историей несвязанного репо

  • совершает до 1234(ранее во времени )являются теперь смесью наших собственных коммитов и коммитов несвязанного репо.

13
задан 19 July 2012 в 06:29
поделиться