Мне известно, что этот вопрос может быть опубликован ранее, но я немного сбит с толку.
Я работаю над групповым проектом, и набор данных, который мы используем, является конфиденциальным. До сих пор мы работали с частным репозиторием и хотели бы сделать его опубликованным c после удаления набора данных (несколько файлов).
Меня беспокоит то, что, поскольку все эти отдельные файлы были созданы в разные моменты времени, какие необходимые шаги мне нужно будет предпринять, чтобы удалить все эти файлы из истории. Эти файлы настраивались и обновлялись несколько раз.
Поскольку в другие файлы были внесены изменения с тем же PR / Commit, будет ли на них какое-либо влияние?
PS Я рассмотрел удаление репо и создание нового, но я предпочитаю сохранять свою историю разработки.
Я посмотрел на BFG , который звучит как правильный инструмент для работы, но я не уверен, что то, что я понял, правильно.
Вот что мне нужно сделать:
rm <filename1>
rm <filename2>
git commit -A "removed x files"
git push
А затем запустить BFG в зеркале репо:
git clone --mirror git://example.com/my-repo.git
bfg-1.12.15.jar --delete-files <filename1> my-repo.git
bfg-1.12.15.jar --delete-files <filename2> my-repo.git
cd my-repo.git
git reflog expire --expire=now --all && git gc --prune=now --aggressive
git push
Это правильный путь ? Любая помощь будет оценена.