Взгляните на git filter-branch.Это то, что лучший инструмент для переписывания истории.Страница man имеет несколько хороших примеров.
Если другие используют репозиторий, убедитесь, что они понимают, что получат основную ветку, исключающую их последние коммиты.Теперь они должны перейти к чему-то вроде temp и выполнить git fetch.
Теперь они могут использовать Gitk - все, чтобы точно определить, где была дивергенция, и перебазироваться, чтобы вернуться в синхронизацию с измененными SHA-1коммиты, которые следовали за коммитом, который имел гигантский файл.