How to find and export your GitLab data.
GitLab shows storage for each group and project on the Usage quotas page under Settings > Usage quotas, on the Storage tab. Group Owners, and project Maintainers or Owners, can see it. Report repository and LFS storage in GB.
Where GitLab shows how much you have.
- Sign in with the Owner role on your top level group, or the Maintainer or Owner role on a single project.
- Select Search or go to in the top bar and open the group or project.
- In the left sidebar, select Settings > Usage quotas, then select the Storage tab.
- Note the repository and LFS storage. Usage refreshes every 90 minutes, so recent pushes may not show yet.
Plan and role. You need the Maintainer or Owner role for a project, or the Owner role for the group namespace. On GitLab.com, each project in a Free tier namespace has 10 GiB of storage for repository and LFS.
What to report on the Polyshares intake.
Report GitLab in GB. The intake also asks how many years the company has used it and how many seats it has.
Report repository plus LFS storage in GB from the top level group's Usage quotas page. Leave out the container registry, package registry and build artifacts, which are not source code history.
For years in use, use the oldest commit date across your main projects. For seats, count the members of your top level group.
Export the full history.
- For code and full commit history, run git clone --mirror on each project's repository.
- To include issues and merge requests, open the project, go to Settings > General, expand Advanced and select Export project. You need the Maintainer or Owner role.
- When the export is ready, download it from the same section. GitLab deletes export files every 24 hours, so download promptly.
- Repeat for each project. Group file exports were deprecated in GitLab 14.6 and replaced by direct transfer, which copies groups and projects into another GitLab instance rather than to a file.
A project export includes the project and wiki repositories, issues with comments, merge requests with diffs and comments, labels, milestones, snippets, releases, LFS objects, archived CI/CD pipelines and design management files. It excludes CI/CD variables, job traces and artifacts, package and container registry images, webhooks, pipeline triggers and secure files.
On GitLab.com the export file limit is 5 GB. On GitLab Self-Managed, administrators set the limit, which defaults to unlimited. Users are rate limited to 6 project exports per minute and 1 export download per project per minute.
Direct transfer needs the Owner role on the source group, a personal access token with the api scope, and a destination GitLab instance, with both instances on GitLab 16.8 or later. It moves data between GitLab instances and does not produce a file.
The intake only needs the size, so you do not have to run an export to fill it in. You also do not need to clean or scrub an export. Polyshares handles anonymization before anything moves.
Why GitLab data has value for AI training.
GitLab keeps code, merge requests and issues together, often with CI pipelines attached. A merge request shows the diff, the discussion and whether the pipeline passed, which ties each change to evidence that it worked.
Issues linked to merge requests connect a reported problem to the exact commits that fixed it. That link between a bug report and its fix is hard to rebuild from code alone.
What stays private.
CI/CD variables and secure files are excluded from project exports by design, and you choose which groups and projects are included.
We anonymize identifying details before anything moves. Polyshares does that work, so your team does not have to scrub records first.
Your company keeps ownership of its data. The license is bounded to defined material and a defined use.
Polyshares is the buyer and pays your company directly. There is no fee or commission, and Polyshares reviews the record before it makes any offer.
Common questions about GitLab data.
Does a GitLab project export include issues and merge requests?
Yes. It includes issues with comments and merge requests with diffs and comments. CI/CD variables, job artifacts and registry images are not included.
Can we export a whole GitLab group to one file?
No. Group file export was deprecated in GitLab 14.6 in favor of direct transfer, which moves groups into another GitLab instance. To get files, export each project.
How often does GitLab update storage on the Usage quotas page?
Every 90 minutes. Recent pushes may take that long to appear.
Is there a size limit on GitLab project exports?
On GitLab.com, yes: 5 GB. Self-Managed administrators set their own limit, and git clone --mirror still captures code history for projects over the limit.
Source: Storage, Migrate GitLab data by using file exports, Migrate groups and projects by using direct transfer. Checked September 2026.
Related
- GitHubMirror clones for code and history, migration archives for issues and pull requests
- BitbucketSize line on Repository details; mirror clone for full commit history
- Azure DevOpsRepositories REST API or git count-objects for size; mirror clone and CSV work items
- All data source guidesEvery system on the Polyshares intake, grouped by category.
Put your numbers on the intake.
List your systems, their sizes and your headcount in one intake. Polyshares reviews the record and prices it. There is no fee or commission to your company.
Check your data