From 75d53ed833055adfc7863f165cec9d83d360a56c Mon Sep 17 00:00:00 2001 From: Jim Boyle <95828167+boylejj@users.noreply.github.com> Date: Tue, 3 Jun 2025 13:39:14 -0400 Subject: [PATCH] Update documentation to reflect increases in GEI's repository size limits and the impacted reusable docs elements (#55883) Co-authored-by: Felicity Chapman --- .../about-migrations-between-github-products.md | 8 +++++++- ...s-from-azure-devops-to-github-enterprise-cloud.md | 7 ++++++- ...om-bitbucket-server-to-github-enterprise-cloud.md | 7 ++++++- .../enterprise-migration-tool/git-repo-size-limit.md | 1 + .../limitations-of-dotcom.md | 7 +++++++ ...d-data.md => limitations-of-migration-tooling.md} | 12 ------------ ...ge-repositories-require-expert-services-ghecom.md | 2 +- .../large-repositories-require-expert-services.md | 2 +- 8 files changed, 29 insertions(+), 17 deletions(-) create mode 100644 data/reusables/enterprise-migration-tool/git-repo-size-limit.md create mode 100644 data/reusables/enterprise-migration-tool/limitations-of-dotcom.md rename data/reusables/enterprise-migration-tool/{limitations-of-migrated-data.md => limitations-of-migration-tooling.md} (52%) diff --git a/content/migrations/using-github-enterprise-importer/migrating-between-github-products/about-migrations-between-github-products.md b/content/migrations/using-github-enterprise-importer/migrating-between-github-products/about-migrations-between-github-products.md index e7e2de47a7..085bf45631 100644 --- a/content/migrations/using-github-enterprise-importer/migrating-between-github-products/about-migrations-between-github-products.md +++ b/content/migrations/using-github-enterprise-importer/migrating-between-github-products/about-migrations-between-github-products.md @@ -142,7 +142,13 @@ When you migrate a repository directly, teams and team access to repositories ar ## Limitations on migrated data -{% data reusables.enterprise-migration-tool.limitations-of-migrated-data %} +{% data reusables.enterprise-migration-tool.limitations-of-dotcom %} + +### Limitations of {% data variables.product.prodname_importer_proper_name %} + +* {% data reusables.enterprise-migration-tool.git-repo-size-limit %} +* **40 GB limit for metadata ({% data variables.release-phases.public_preview %}):** The {% data variables.product.prodname_importer_secondary_name %} cannot migrate repositories with more than 40 GB of metadata. Metadata includes issues, pull requests, releases, and attachments. In most cases, large metadata is caused by binary assets attached to releases. You can exclude releases from the migration with the `migrate-repo` command's `--skip-releases` flag, and then move your releases manually after the migration. +{% data reusables.enterprise-migration-tool.limitations-of-migration-tooling %} ## Getting started diff --git a/content/migrations/using-github-enterprise-importer/migrating-from-azure-devops-to-github-enterprise-cloud/about-migrations-from-azure-devops-to-github-enterprise-cloud.md b/content/migrations/using-github-enterprise-importer/migrating-from-azure-devops-to-github-enterprise-cloud/about-migrations-from-azure-devops-to-github-enterprise-cloud.md index a5b2e2d16c..df802610ad 100644 --- a/content/migrations/using-github-enterprise-importer/migrating-from-azure-devops-to-github-enterprise-cloud/about-migrations-from-azure-devops-to-github-enterprise-cloud.md +++ b/content/migrations/using-github-enterprise-importer/migrating-from-azure-devops-to-github-enterprise-cloud/about-migrations-from-azure-devops-to-github-enterprise-cloud.md @@ -29,7 +29,12 @@ If you want to migrate Azure Pipelines to {% data variables.product.prodname_act ## Limitations on migrated data -{% data reusables.enterprise-migration-tool.limitations-of-migrated-data %} +{% data reusables.enterprise-migration-tool.limitations-of-dotcom %} + +### Limitations of {% data variables.product.prodname_importer_proper_name %} + +* {% data reusables.enterprise-migration-tool.git-repo-size-limit %} +{% data reusables.enterprise-migration-tool.limitations-of-migration-tooling %} ## Getting started diff --git a/content/migrations/using-github-enterprise-importer/migrating-from-bitbucket-server-to-github-enterprise-cloud/about-migrations-from-bitbucket-server-to-github-enterprise-cloud.md b/content/migrations/using-github-enterprise-importer/migrating-from-bitbucket-server-to-github-enterprise-cloud/about-migrations-from-bitbucket-server-to-github-enterprise-cloud.md index 69ce05f7f6..dd0b82ef46 100644 --- a/content/migrations/using-github-enterprise-importer/migrating-from-bitbucket-server-to-github-enterprise-cloud/about-migrations-from-bitbucket-server-to-github-enterprise-cloud.md +++ b/content/migrations/using-github-enterprise-importer/migrating-from-bitbucket-server-to-github-enterprise-cloud/about-migrations-from-bitbucket-server-to-github-enterprise-cloud.md @@ -34,7 +34,12 @@ Currently, the following data is **not** migrated. ## Limitations on migrated data -{% data reusables.enterprise-migration-tool.limitations-of-migrated-data %} +{% data reusables.enterprise-migration-tool.limitations-of-dotcom %} + +### Limitations of {% data variables.product.prodname_importer_proper_name %} + +* **40 GB size limit for repository archives ({% data variables.release-phases.public_preview %}):** The {% data variables.product.prodname_importer_secondary_name %} cannot migrate repositories with more than 40 GB of combined git data and metadata in the repository archive. +{% data reusables.enterprise-migration-tool.limitations-of-migration-tooling %} ## Getting started diff --git a/data/reusables/enterprise-migration-tool/git-repo-size-limit.md b/data/reusables/enterprise-migration-tool/git-repo-size-limit.md new file mode 100644 index 0000000000..61cfce108f --- /dev/null +++ b/data/reusables/enterprise-migration-tool/git-repo-size-limit.md @@ -0,0 +1 @@ +**40 GB size limit for a Git repository ({% data variables.release-phases.public_preview %}):** This limit applies only to the source code. To check if the repository archive is over the limit, use the [git-sizer](https://github.com/github/git-sizer) tool and review the total blob size in the output. The git-sizer tool also helps to identify potential issues related to large files, blob size, commit size, and tree counts that could impact migrations. diff --git a/data/reusables/enterprise-migration-tool/limitations-of-dotcom.md b/data/reusables/enterprise-migration-tool/limitations-of-dotcom.md new file mode 100644 index 0000000000..bdee7301f2 --- /dev/null +++ b/data/reusables/enterprise-migration-tool/limitations-of-dotcom.md @@ -0,0 +1,7 @@ +There are limits to what {% data variables.product.prodname_importer_proper_name %} can migrate. Some are due to limitations of {% data variables.product.prodname_dotcom %}, while others are limitations of {% data variables.product.prodname_importer_proper_name %} itself. + +### Limitations of {% data variables.product.prodname_dotcom %} + +* **2 GB size limit for a single Git commit:** No single commit in your Git repository can be larger than 2 GB. If any of your commits are larger than 2 GB, you will need to split the commit into smaller commits that are each 2 GB or smaller. +* **255 byte limit for Git references:** No single [Git reference](https://git-scm.com/book/en/v2/Git-Internals-Git-References), commonly known as a "ref", can have a name larger than 255 bytes. Usually, this means that your references cannot be more than 255 characters long, but any non-[ASCII](https://en.wikipedia.org/wiki/ASCII) characters, such as emojis, may consume more than one byte. If any of your Git references are too large, we'll return a clear error message. +* **100 MB file size limit:** After you complete your migration, no single file in your Git repository can be larger than 100 MB. During repository migration this limit is increased to 400 MB. Consider using {% data variables.large_files.product_name_short %} to store large files. For more information, see [AUTOTITLE](/repositories/working-with-files/managing-large-files). diff --git a/data/reusables/enterprise-migration-tool/limitations-of-migrated-data.md b/data/reusables/enterprise-migration-tool/limitations-of-migration-tooling.md similarity index 52% rename from data/reusables/enterprise-migration-tool/limitations-of-migrated-data.md rename to data/reusables/enterprise-migration-tool/limitations-of-migration-tooling.md index 1905e952e9..fe0a51438b 100644 --- a/data/reusables/enterprise-migration-tool/limitations-of-migrated-data.md +++ b/data/reusables/enterprise-migration-tool/limitations-of-migration-tooling.md @@ -1,15 +1,3 @@ -There are limits to what {% data variables.product.prodname_importer_proper_name %} can migrate. Some are due to limitations of {% data variables.product.prodname_dotcom %}, while others are limitations of {% data variables.product.prodname_importer_proper_name %} itself. - -### Limitations of {% data variables.product.prodname_dotcom %} - -* **2 GB size limit for a single Git commit:** No single commit in your Git repository can be larger than 2 GB. If any of your commits are larger than 2 GB, you will need to split the commit into smaller commits that are each 2 GB or smaller. -* **255 byte limit for Git references:** No single [Git reference](https://git-scm.com/book/en/v2/Git-Internals-Git-References), commonly known as a "ref", can have a name larger than 255 bytes. Usually, this means that your references cannot be more than 255 characters long, but any non-[ASCII](https://en.wikipedia.org/wiki/ASCII) characters, such as emojis, may consume more than one byte. If any of your Git references are too large, we'll return a clear error message. -* **100 MB file size limit:** After you complete your migration, no single file in your Git repository can be larger than 100 MB. This limit is increased to 400 MB when migrating a repository. Consider using {% data variables.large_files.product_name_short %} for storing large files. For more information, see [AUTOTITLE](/repositories/working-with-files/managing-large-files). - -### Limitations of {% data variables.product.prodname_importer_proper_name %} - -* **20 GB size limit for a Git repository:** This limit only applies to the source code. To check if the repository archive is over the limit, use the [git-sizer](https://github.com/github/git-sizer) tool and review the total blob size in the output. The git-sizer tool also helps to identify potential issues related to large files, blob size, commit size, and tree counts that could impact migrations. -* **20 GB limit for metadata:** The {% data variables.product.prodname_importer_secondary_name %} cannot migrate repositories with more than 20 GB of metadata. Metadata includes issues, pull requests, releases, and attachments. In most cases, large metadata is caused by binary assets attached to releases. You can exclude releases from the migration with the `migrate-repo` command's `--skip-releases` flag, and then move your releases manually after the migration. * **400 MB file size limit:** When migrating a repository with {% data variables.product.prodname_importer_proper_name %}, no single file in your Git repository can be larger than 400 MB. Consider using {% data variables.large_files.product_name_short %} for storing large files. For more information, see [AUTOTITLE](/repositories/working-with-files/managing-large-files). * **{% data variables.large_files.product_name_short %} objects not migrated:** The {% data variables.product.prodname_importer_secondary_name %} can migrate repositories that use {% data variables.large_files.product_name_short %}, but the LFS objects themselves will not be migrated. They can be pushed to your migration destination as a follow-up task after the migration is complete. For more information, see [AUTOTITLE](/repositories/creating-and-managing-repositories/duplicating-a-repository#mirroring-a-repository-that-contains-git-large-file-storage-objects). * **Follow-up tasks required:** When migrating between {% data variables.product.prodname_dotcom %} products, certain settings are not migrated and must be reconfigured in the new repository. For a list of follow-up tasks you'll need to complete after each migration, see [AUTOTITLE](/migrations/using-github-enterprise-importer/migrating-between-github-products/overview-of-a-migration-between-github-products#completing-follow-up-tasks). diff --git a/data/reusables/migrations/large-repositories-require-expert-services-ghecom.md b/data/reusables/migrations/large-repositories-require-expert-services-ghecom.md index e6a1809801..c09b56ef33 100644 --- a/data/reusables/migrations/large-repositories-require-expert-services-ghecom.md +++ b/data/reusables/migrations/large-repositories-require-expert-services-ghecom.md @@ -1 +1 @@ -For complex repositories larger than around 5 GB, we recommend contacting {% data variables.product.prodname_expert_services %}. +For complex repositories larger than around 40GB, we recommend contacting {% data variables.product.prodname_expert_services %}. diff --git a/data/reusables/migrations/large-repositories-require-expert-services.md b/data/reusables/migrations/large-repositories-require-expert-services.md index d38e01495b..8c79e83665 100644 --- a/data/reusables/migrations/large-repositories-require-expert-services.md +++ b/data/reusables/migrations/large-repositories-require-expert-services.md @@ -1 +1 @@ -For repositories with git or metadata archives greater than 20GB, consider engaging our {% data variables.product.prodname_expert_services %} to help bring your large repositories within Enterprise Cloud Importer limits. +For repositories with git or metadata archives greater than 40GB, consider engaging our {% data variables.product.prodname_expert_services %} to help bring your large repositories within Enterprise Cloud Importer limits.