Import and migrate to GitLab

  • Tier: Free, Premium, Ultimate
  • Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated

Version history

  • All importers defaulting to disabled for GitLab Self-Managed instances introduced in GitLab 16.0.

Bring your existing work into GitLab.

A migration tool is available for some third-party platforms. Some support user contribution and membership mapping.

Migrate from Groups Projects Migration tool Automatic mapping
GitLab (by using direct transfer) yes yes yes yes
GitLab (by using file export) yes1 yes yes no
Bitbucket Server no yes yes yes
GitHub no yes yes yes
Gitea no yes yes yes
Bitbucket Cloud no yes yes no
FogBugz no yes yes no
Git repository through a manifest file no yes yes no
Git repository through a repository URL no yes yes no
ClearCase no yes no no
CVS no yes no no
Perforce Helix no yes no no
Subversion no yes no no
Team Foundation Version Control (TFVC) no yes no no
Jira (issues only) no no yes no

Footnotes:

  1. Using file exports for group migration is deprecated.

Migrate from Subversion

GitLab cannot automatically migrate Subversion repositories to Git. To convert Subversion repositories to Git, you can use external tools, for example:

  • git svn, for very small and basic repositories.
  • reposurgeon, for larger and more complex repositories.

Migrate by engaging Professional Services

If you prefer, you can engage GitLab Professional Services to migrate groups and projects to GitLab instead of doing it yourself. For more information, see the Professional Services Full Catalog.

View project import history

You can view all project imports you created. This list includes:

  • Paths of source projects if projects were imported from external systems, or import method if GitLab projects were migrated.
  • Paths of destination projects.
  • Start date of each import.
  • Status of each import.
  • Error details if any errors occurred.

The history also includes projects created from either:

GitLab uses import repository by URL to create a new project from a template.

To view project import history:

  1. In the upper-right corner, select Create new ({plus}) and New project/repository.
  2. Select Import project.
  3. In the upper-right corner, select the History link.
  4. If there are any errors for a particular import, select Details to see them.

Importing projects with LFS objects

When importing a project that contains LFS objects, if the project has an .lfsconfig file with a URL host (lfs.url) different from the repository URL host, LFS files are not downloaded.