Skip to main content

About migrations from Azure DevOps to GitHub Enterprise Cloud

Learn which data GitHub Enterprise Importer can migrate.

About migrations from Azure DevOps

You can use GitHub Enterprise Importer to migrate repositories from Azure DevOps to GitHub Enterprise Cloud (GitHub.com or GHE.com).

You can only use GitHub Enterprise Importer to migrate from Azure DevOps Cloud, not from Azure DevOps Server. If you currently use Azure DevOps Server and want to migrate to GitHub, you can migrate to Azure DevOps Cloud first. For more information, see Migrate to Azure DevOps on the Azure site.

Data that is migrated

We currently only support migrating the following repository data from Azure DevOps to GitHub Enterprise Cloud.

  • Git source (including commit history)
  • Pull requests
  • User history for pull requests
  • Work item links on pull requests
  • Attachments on pull requests
  • Branch policies for the repository (user-scoped branch policies and cross-repo branch policies are not included)

If you want to migrate Azure Pipelines to GitHub Actions, contact your GitHub account manager.

Limitations on migrated data

Há limites para o que o GitHub Enterprise Importer pode migrar. Alguns ocorrem devido a limitações do GitHub, enquanto outros são limitações do próprio GitHub Enterprise Importer.

Limitações do GitHub

  • Limite de tamanho de 2 GiB para uma única confirmação do Git: Nenhuma confirmação única em seu repositório Git pode ser maior que 2 GiB. Se algum de seus commits for maior que 2 GiB, você precisará dividi-lo em commits menores, cada um com 2 GiB ou menos.
  • Limite de 255 bytes para referências do Git: nenhumareferência individual do Git, comumente conhecida como "referência", pode ter um nome maior que 255 bytes. Normalmente, isso significa que as referências não podem ter mais de 255 caracteres, mas qualquer caractere nãoASCII, como emojis, pode consumir mais de um byte. Se uma das referências do Git for muito grande, retornaremos uma mensagem de erro clara.
  • Limite de tamanho de arquivo de 100 MiB: Depois de concluir a migração, nenhum arquivo único no repositório Git poderá ter mais de 100 MiB. Durante a migração do repositório, esse limite é aumentado para 400 MiB. Considere o uso do Git LFS para armazenar arquivos grandes. Para saber mais, confiraGerenciar arquivos grandes.

Limitations of GitHub Enterprise Importer

  • Limite de tamanho de 40 GB para um repositório Git (versão prévia pública): este limite de aplica apenas ao código-fonte. Para verificar se o arquivo do repositório está acima do limite, use a ferramenta git-sizer e analise o tamanho total do BLOB na saída. A ferramenta git-sizer também ajuda a identificar possíveis problemas relacionados a arquivos grandes, tamanho de BLOB, tamanho de commit e contagens de árvores que podem afetar as migrações.
  • Limite de tamanho 400 MB para arquivos: ao migrar um repositório com o GitHub Enterprise Importer, nenhum arquivo no repositório Git pode ter mais de 400 MB. Considere o uso do Git LFS para armazenar arquivos grandes. Para saber mais, confira Gerenciar arquivos grandes.
  • Os objetos do Git LFS não migrados: o Importer pode migrar repositórios que usam o Git LFS, mas os próprios objetos LFS não serão migrados. Eles podem ser enviados por push para o destino de migração como uma tarefa de acompanhamento após a conclusão da migração. Para saber mais, confira Duplicar um repositório.
  • Tarefas de acompanhamento necessárias: ao migrar entre produtos do GitHub, algumas configurações não são migradas e precisam ser reconfiguradas no novo repositório. Para ver uma lista de tarefas de acompanhamento que você precisará concluir após cada migração, confira Visão geral de uma migração entre produtos GitHub.
  • Funcionalidade de pesquisa de código atrasada: a reindexação do índice de pesquisa pode levar algumas horas após a migração de um repositório, e as pesquisas de código podem retornar resultados inesperados até que a reindexação seja concluída.
  • Os conjuntos de regras configurados para sua organização podem causar falha nas migrações: por exemplo, se você tiver configurado uma regra que exige que os endereços de email dos autores de commits terminem com @monalisa.cat e o repositório que você está migrando contém commits que não obedecem a essa regra, sua migração falhará. Para saber mais sobre os conjuntos de regras, confira Sobre os conjuntos de regras.
  • O conteúdo do manequim pode não ser pesquisável: os manequins são usuários de espaço reservado aos quais o conteúdo importado (como problemas, solicitações de pull, comentários, etc.) está associado. Quando você pesquisa conteúdo associado a um manequim, como problemas atribuídos, os problemas podem não ser encontrados. Uma vez que um manequim é recuperado, o conteúdo deve ser encontrado por meio do novo proprietário. Para saber mais, confira Como recuperar manequins no GitHub Enterprise Importer.

Getting started

Before you migrate from Azure DevOps, you should plan out how you will run your migration. Before migrating any data, you will need to choose someone to run the migration. You must grant that person the necessary access for both the source and the destination of the migration. We also recommend you run a trial migration first.

For an overview of the migration process from beginning to end, see Overview of a migration from Azure DevOps to GitHub Enterprise Cloud.