About migration paths to GitHub
If you're moving between GitHub products, such as from GitHub Enterprise Server to GitHub Enterprise Cloud, or from another code hosting platform, such as Bitbucket Server or GitLab, to GitHub, you'll want to bring your work with you: your code, the code's history, and all of your past conversations and collaboration.
To plan for your migration, consider the destination and source. These considerations determine the path for your migration. For some migration paths, we offer specialist tools that allow you to migrate source, history, and metadata. For others, you'll need to perform a simpler "source and history" or "source snapshot" migration.
Some migration paths require tools that are only available with expert-led migrations. For more information, contact your account manager on GitHub's Sales team or see the GitHub Expert Services website.
In our recommendations, we'll assume that you want the highest level of fidelity if possible, which includes source, history, and metadata.
Migrations to GitHub.com
You can review the scope and tooling for your migration to GitHub.com, which includes migrations to GitHub Enterprise Cloud. You can also review any additional information or caveats.
- GitHub Enterprise Server 3.4.1 or newer to GitHub.com
- GitHub Enterprise Server 3.4.0 or older to GitHub.com
- GitHub.com to GitHub.com
- Azure DevOps Services (Azure DevOps Cloud) to GitHub.com
- Azure DevOps Server to GitHub.com
- Bitbucket Cloud (Bitbucket.org) to GitHub.com
- Bitbucket Server or Bitbucket Data Center to GitHub.com
- GitLab to GitHub.com
- Any Git repository to GitHub.com
- Any Mercurial repository to GitHub.com
- Any Subversion (SVN) repository to GitHub.com
- Any Team Foundation Version Control (TFVC) repository to GitHub.com
- Any Perforce repository to GitHub.com
- Any other repository to GitHub.com
- GHE.com to GitHub.com
GitHub Enterprise Server 3.4.1 or newer to GitHub.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer
- More information:
- Caveats:
- For complex repositories larger than around 5 GB, you may need to use
ghe-migrator
and Enterprise Cloud Importer instead. Enterprise Cloud Importer is only available for expert-led migrations. - If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GitHub.com."
- For complex repositories larger than around 5 GB, you may need to use
GitHub Enterprise Server 3.4.0 or older to GitHub.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer
- More information:
- Caveats:
- For complex repositories larger than around 5 GB, you may need to use
ghe-migrator
and Enterprise Cloud Importer instead. Enterprise Cloud Importer is only available for expert-led migrations. - If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GitHub.com."
- For complex repositories larger than around 5 GB, you may need to use
GitHub.com to GitHub.com
Migrations from GitHub.com include GitHub Enterprise Cloud. This path includes adoption of Enterprise Managed Users or a move between managed enterprises.
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer or GitHub Expert Services
- More information:
- Caveats:
- For complex repositories larger than around 5 GB, you may need to use
ghe-migrator
and Enterprise Cloud Importer instead. Enterprise Cloud Importer is only available for expert-led migrations. - If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GitHub.com."
- For complex repositories larger than around 5 GB, you may need to use
Azure DevOps Services (Azure DevOps Cloud) to GitHub.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer
- More information: Using GitHub Enterprise Importer
Azure DevOps Server to GitHub.com
- Scope: Source, history, and metadata
- Tooling: Migration to Azure DevOps Services, then GitHub Enterprise Importer
- More information:
- Caveats: If you can't migrate to Azure DevOps Services first, you must perform a "source and history" migration instead. For more information, Migrations from any Git repository to GitHub.com.
Bitbucket Cloud (Bitbucket.org) to GitHub.com
- Scope: Source and history
- Tooling: Git CLI or GitHub Importer
- More information:
Bitbucket Server or Bitbucket Data Center to GitHub.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer
- More information:
- Caveats:
- For complex repositories larger than around 5 GB, you may need to use
bbs-exporter
and Enterprise Cloud Importer instead. Enterprise Cloud Importer is only available for expert-led migrations. - If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GitHub.com."
- For complex repositories larger than around 5 GB, you may need to use
GitLab to GitHub.com
- Scope: Source, history, and metadata
- Tooling:
gl-exporter
, then Enterprise Cloud Importer (expert-led migrations only) - More information: GitHub Expert Services website
- Caveats:
- Enterprise Cloud Importer is only available for expert-led migrations.
- If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GitHub.com."
Any Git repository to GitHub.com
- Scope: Source and history
- Tooling: Git CLI or GitHub Importer if the repository is accessible over the public internet
- More information:
Any Mercurial repository to GitHub.com
- Scope: Source and history
- Tooling: Mercurial, Git CLI, and Python
- More information: Importing a Mercurial repository
Any Subversion (SVN) repository to GitHub.com
- Scope: Source and history
- Tooling: Subversion and Git CLI
- More information: Importing a Subversion repository
Any Team Foundation Version Control (TFVC) repository to GitHub.com
- Scope: Source and history
- Tooling: Azure Repos, then Git CLI
- More information: Importing a Team Foundation Version Control repository
Any Perforce repository to GitHub.com
- Scope: Source and history
- Tooling:
git-p4
, then Git CLI - More information:
- git-p4 in the Git documentation
- Adding locally hosted code to GitHub
Any other repository to GitHub.com
- Scope: Source snapshot
- Tooling: GitHub CLI or Git CLI
- More information: Adding locally hosted code to GitHub
GHE.com to GitHub.com
This path is not currently supported with our official tools. Please contact GitHub Expert Services.
Migrations to GHE.com
If you're migrating to GitHub Enterprise Cloud with data residency, your migration destination is GHE.com.
Migrations to GHE.com use similar tools as migrations to GitHub.com. However, the GitHub Importer and Enterprise Cloud Importer are not available.
Follow a link below to review the scope and tooling for your migration to GHE.com, plus any additional information or caveats.
- GitHub Enterprise Server 3.4.1 or newer to GHE.com
- GitHub Enterprise Server 3.4.0 or older to GHE.com
- GitHub.com to GHE.com
- Azure DevOps Services (Azure DevOps Cloud) to GHE.com
- Azure DevOps Server to GHE.com
- Bitbucket Cloud (Bitbucket.org) to GHE.com
- Bitbucket Server or Bitbucket Data Center to GHE.com
- GitLab to GHE.com
- Any Git repository to GHE.com
- Any Mercurial repository to GHE.com
- Any Subversion (SVN) repository to GHE.com
- Any Team Foundation Version Control (TFVC) repository to GHE.com
- Any Perforce repository to GHE.com
- Any other repository to GHE.com
GitHub Enterprise Server 3.4.1 or newer to GHE.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer
- More information:
- Caveats:
- For complex repositories larger than around 5 GB, we recommend contacting GitHub Expert Services.
- If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GHE.com."
GitHub Enterprise Server 3.4.0 or older to GHE.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer
- More information:
- Caveats:
- For complex repositories larger than around 5 GB, we recommend contacting GitHub Expert Services.
- If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GHE.com."
GitHub.com to GHE.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer or GitHub Expert Services
- More information:
- Caveats:
- For complex repositories larger than around 5 GB, we recommend contacting GitHub Expert Services.
- If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GHE.com."
Azure DevOps Services (Azure DevOps Cloud) to GHE.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer
- More information: Using GitHub Enterprise Importer
Azure DevOps Server to GHE.com
- Scope: Source, history, and metadata
- Tooling: Migration to Azure DevOps Services, then GitHub Enterprise Importer
- More information:
- Caveats: If you can't migrate to Azure DevOps Services first, you must perform a "source and history" migration instead. For more information, see Migrations from any Git repository to GHE.com.
Bitbucket Cloud (Bitbucket.org) to GHE.com
- Scope: Source and history
- Tooling: Git CLI
- More information:
Bitbucket Server or Bitbucket Data Center to GHE.com
- Scope: Source, history, and metadata
- Tooling: GitHub Enterprise Importer
- More information:
- Caveats:
- For complex repositories larger than around 5 GB, we recommend contacting GitHub Expert Services.
- If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GHE.com."
GitLab to GHE.com
- Scope: Source, history, and metadata
- Tooling: Contact GitHub Expert Services
- More information: GitHub Expert Services website
- Caveats:
- If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Migrations from any Git repository to GHE.com."
Any Git repository to GHE.com
- Scope: Source and history
- Tooling: Git CLI
- More information:
Any Mercurial repository to GHE.com
- Scope: Source and history
- Tooling: Mercurial, Git CLI, and Python
- More information: Importing a Mercurial repository
Any Subversion (SVN) repository to GHE.com
- Scope: Source and history
- Tooling: Subversion and Git CLI
- More information: Importing a Subversion repository
Any Team Foundation Version Control (TFVC) repository to GHE.com
- Scope: Source and history
- Tooling: Azure Repos, then Git CLI
- More information: Importing a Team Foundation Version Control repository
Any Perforce repository to GHE.com
- Scope: Source and history
- Tooling:
git-p4
, then Git CLI - More information:
- git-p4 in the Git documentation
- Adding locally hosted code to GitHub
Any other repository to GHE.com
- Scope: Source snapshot
- Tooling: GitHub CLI or Git CLI
- More information: Adding locally hosted code to GitHub
Migrations to GitHub Enterprise Server
You can review the scope and tooling for your migration to GitHub Enterprise Server, including any additional information or caveats.
- GitHub.com to GitHub Enterprise Server
- GitHub Enterprise Server to GitHub Enterprise Server
- Azure DevOps to GitHub Enterprise Server
- Bitbucket Cloud (Bitbucket.org) to GitHub Enterprise Server
- Bitbucket Server or Bitbucket Data Center to GitHub Enterprise Server
- GitLab to GitHub Enterprise Server
- Any Git repository to GitHub Enterprise Server
- Any Mercurial repository to GitHub Enterprise Server
- Any Subversion (SVN) repository to GitHub Enterprise Server
- Any Team Foundation Version Control (TFVC) repository to GitHub Enterprise Server
- Any Perforce repository to GitHub Enterprise Server
- Any other repository to GitHub Enterprise Server
- GHE.com to GitHub Enterprise Server
GitHub.com to GitHub Enterprise Server
Migrations from GitHub.com include GitHub Enterprise Cloud.
- Scope: Source, history, and metadata
- Tooling: Organization migrations API, then
ghe-migrator
- More information:
GitHub Enterprise Server to GitHub Enterprise Server
- Scope: Source, history, and metadata
- Tooling: Organization migrations API, then
ghe-migrator
- More information:
Azure DevOps to GitHub Enterprise Server
- Scope: Source and history
- Tooling: Git CLI
- More information: Importing an external Git repository using the command line
Bitbucket Cloud (Bitbucket.org) to GitHub Enterprise Server
- Scope: Source and history
- Tooling: Git CLI
- More information: Importing an external Git repository using the command line
Bitbucket Server or Bitbucket Data Center to GitHub Enterprise Server
- Scope: Source, history, and metadata
- Tooling:
bbs-exporter
(expert-led migrations only), thenghe-migrator
- More information:
- Caveats: If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Any Git repository to GitHub Enterprise Server."
GitLab to GitHub Enterprise Server
- Scope: Source, history, and metadata
- Tooling:
gl-exporter
(expert-led migrations only), thenghe-migrator
- More information:
- Caveats: If an expert-led migration isn't right for you, you can perform a "source and history" migration of the affected repositories instead. For more information, see "Any Git repository to GitHub Enterprise Server."
Any Git repository to GitHub Enterprise Server
- Scope: Source and history
- Tooling: Git CLI
- More information: Importing an external Git repository using the command line
Any Mercurial repository to GitHub Enterprise Server
- Scope: Source and history
- Tooling: Mercurial, Git CLI, and Python
- More information: Importing a Mercurial repository
Any Subversion (SVN) repository to GitHub Enterprise Server
- Scope: Source and history
- Tooling: Subversion and Git CLI
- More information: Importing a Subversion repository
Any Team Foundation Version Control (TFVC) repository to GitHub Enterprise Server
- Scope: Source and history
- Tooling: Azure Repos, then Git CLI
- More information: Importing a Team Foundation Version Control repository
Any Perforce repository to GitHub Enterprise Server
- Scope: Source and history
- Tooling:
git-p4
, then Git CLI - More information:
- git-p4 in the Git documentation
- Adding locally hosted code to GitHub
Any other repository to GitHub Enterprise Server
- Scope: Source snapshot
- Tooling: GitHub CLI or Git CLI
- More information: Adding locally hosted code to GitHub
GHE.com to GitHub Enterprise Server
This path is not currently supported with our official tools. Please contact GitHub Expert Services.