изменения отличаются от запроса на слияние от активности gitlab - PullRequest
0 голосов
/ 02 апреля 2020

Я пытаюсь уменьшить размер файла .pack в репозитории git. Я удалил несколько ненужных объектов в файле .pack и отодвинул обратно в мою ветку разработчика. Когда я проверяю свою активность в gitlab: enter image description here

Но мой запрос на слияние выглядит следующим образом: enter image description here

Может кто-нибудь объяснить мне почему запрос на слияние показывает 49781 добавлений вместо удалений.

1 Ответ

1 голос
/ 02 апреля 2020

Вы не можете объединить переписывание историй. Вы должны заставить pu sh освоить.

Мастер по-прежнему имеет все объекты, объединение просто добавит к нему переписанные коммиты, но ничего не удалит из его истории.

Но это все еще оставляет другие ветви и теги, которые ссылаются на старые объекты и будут препятствовать их удалению. В любом случае вы также хотите обновить свои теги.

Необходимо повторить фильтр для всех ветвей и тегов, добавив --tag-name-filter cat -- --all к команде фильтра. Обратитесь к документации git -filter-branch о том, как правильно сжать хранилище.

git filter-branch <...> --tag-name-filter cat -- --all

rm .git/refs/remotes/origin/HEAD
git push -f origin 'refs/remotes/origin/*:refs/heads/*'
git push -f --tags
git fetch

Вам необходимо использовать тот же фильтр (или тот, который удаляет как минимум столько же или более), так что ваша ветка разработки не будет полностью отличаться от других веток или не вернется в состояние разработки до того, как вы его отфильтровали.

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