GitHub — очистка истории от нежелательных файлов

Я довольно хорошо знаком с GitHub и процессом коммитов/push/pull/и т.д. но я не уверен, какой лучший подход к этой проблеме, если он есть. У меня есть репозиторий для проекта Unity, над которым я работал прошлой осенью для класса, и в этом репо много файлов, которые я не хочу видеть в истории коммитов. Например, куча файлов .meta и других подобных вещей, которые сильно увеличивают количество файлов, редактируемых в каждой фиксации, что очень затрудняет поиск и просмотр именно тех изменений файлов, которые я хочу видеть ( в основном все в папке Assets).

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

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


person PhoenixAki    schedule 11.05.2018    source источник
comment
Я использовал BFG несколько месяцев назад. Я бы сказал, что это лучше всего подходит для вашей работы (если вы просто хотите удалить, а не переходить на git lfs). Хорошо: Знаете ли вы, что можете использовать BFG с расширениями файлов и даже списками расширений файлов? Так что просто передайте все расширения файлов, которые вы хотите удалить, в BFG. Вот и все. Думаю, формат был что-то вроде .jpg,.png. Если у вас есть какие-либо дополнительные проблемы, дайте мне знать, думаю, у меня где-то лежат примеры кода   -  person Jan    schedule 11.05.2018


Ответы (1)


Если вас не волнует история, просто сожмите все это в один коммит в новом репо.

Если вам не все равно, BFG — ваш лучший выбор. Обратите внимание, что вы можете удалить его с помощью идентификатора BLOB-объекта Git, а это означает, что вы действительно можете сделать что угодно с достаточным количеством сценариев.

person javabrett    schedule 03.08.2018