Before exporting a project, run GitGarbageCollectWorker with prune
<!--IssueSummary start--> <details> <summary> Everyone can contribute. [Help move this issue forward](https://handbook.gitlab.com/handbook/marketing/developer-relations/contributor-success/community-contributors-workflows/#contributor-links) while earning points, leveling up and collecting rewards. </summary> - [Close this issue](https://contributors.gitlab.com/manage-issue?action=close&projectId=278964&issueIid=340375) </details> <!--IssueSummary end--> <!-- This issue template can be used a great starting point for feature requests. The last section "Release notes" can be used as a summary of the feature and is also required if you want to have your release post blog MR auto generated using the release post item generator: https://about.gitlab.com/handbook/marketing/blog/release-posts/#release-post-item-generator. The remaining sections are the backbone for every feature in GitLab. --> ### Release notes Dealing with large project exports can be problematic. We've added Git's own `reflog` expiry and `gc` to our project export process to provide smaller export files, esp. for large projects in active development. ### Problem to solve We [recently documented](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/67593/) a workaround for importing too large repos to a GitLab instance. Since then @onemoz & me found that one of the reasons for too large exports, is that the `project.bundle` can still contain lots of data in the reflog and loose objects. This is addressed by workaround, but it could also be prevented earlier. ### Proposal As an early stage of the exporting process, invoke a relevant part of the [Housekeeping stack](https://gitlab.com/gitlab-org/gitlab/blob/14-2-stable-ee/doc/administration/housekeeping.md#how-housekeeping-handles-pool-repositories). ### Intended users * [Delaney (Development Team Lead)](https://about.gitlab.com/handbook/marketing/product-marketing/roles-personas/#delaney-development-team-lead) * [Sidney (Systems Administrator)](https://about.gitlab.com/handbook/marketing/product-marketing/roles-personas/#sidney-systems-administrator) ### What does success look like, and how can we measure that? - Generally smaller uploads & faster imports. - Less errors seen during project import, specifically due to too large files. - Fewer support requests to help with the import workaround. ### What is the type of buyer? Customers who migrate their data, for example from self-managed to GitLab.com
issue