Метод удаления коммитов для уменьшения размера репозитория - PullRequest
1 голос
/ 03 июня 2019

Я использую git-репозиторий для доставки .jar файлов клиенту. Если я не удаляю старые коммиты, размер хранилища становится больше, и в конечном итоге Bitbucket отключает любые новые коммиты. Вот как я доставлял файлы:

git reset --hard HEAD~
git push -f origin some-branch
git commit -m "Some message"
git push origin some-branch

По сути, последний коммит всегда содержит только файлы .jar, я его удаляю, принудительно нажимаю, чтобы удалить коммит из удаленной ветви, фиксирую и толкаю новые jar-файлы. Я недавно переключился на это, только чтобы заметить, что это не влияет на размер хранилища (оно продолжает расти):

git reset --hard HEAD~
git commit -m "Some message"
git push -f origin some-branch

Я думал, что это должно быть равным предыдущему методу. Это не. Почему?

1 Ответ

2 голосов
/ 03 июня 2019

Когда вы используете git push -f, на последний коммит больше не ссылаются, но он не удаляется. В конце концов, git будет собирать осиротевшие данные для экономии места.

Если вы используете Bitbucket Cloud, вы можете связаться со службой поддержки, чтобы запустить git gc, чтобы освободить место.

В документации Bitbucket содержатся советы по уменьшению размера хранилища: https://confluence.atlassian.com/bitbucket/reduce-repository-size-321848262.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...