Как удалить блоб из git repo - PullRequest
7 голосов
/ 26 августа 2011

Я случайно добавил дамп базы данных (более 1 ГБ) в репо, выдвинул его и заметил это несколько дней спустя.Я использовал git filter-branch для удаления файла, просроченный reflog и запустил git gc для удаления неиспользуемых объектов, но большой дамп базы данных все еще находится в репо.Я использовал Какой коммит имеет этот BLOB-объект? , но нашел коммит, имеющий ссылку на этот BLOB-объект.Как я могу удалить это или как узнать, почему это не было удалено во время git gc?

Ответы [ 2 ]

13 голосов
/ 26 августа 2011

Какую команду вы вызывали именно при запуске git gc?

Обратите внимание на man-страницу git gc:

Необязательная переменная конфигурации gc.pruneExpire контролирует, сколько лет необработанным свободным объектам должно быть до их удаления. По умолчанию «2 недели назад»

Так что, если ваш блоб младше 14 дней, вам нужно позвонить

git gc --prune=<date> (for date you also can insert now)
1 голос
/ 26 августа 2011

Не могли бы вы просто сделать rm .git/objects/path/to/blob?

Я не уверен, почему git-gc не удалил его.

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