Skip to main content

Sobre migrações do Azure DevOps para o GitHub Enterprise Cloud

Saiba quais dados podem ser migrados pelo GitHub Enterprise Importer.

Sobre as migrações do Azure DevOps

Você pode usar o GitHub Enterprise Importer para migrar repositórios do Azure DevOps para o GitHub Enterprise Cloud.

Você só pode usar o GitHub Enterprise Importer para migrar do Azure DevOps Cloud, não do Azure DevOps Server. Atualmente, se você usa o Azure DevOps Server e deseja migrar para o GitHub, migre primeiro para o Azure DevOps Cloud. Para obter mais informações, confira Migrar para o Azure DevOps no site do Azure.

Dados que são migrados

Atualmente, só damos suporte à migração dos dados de repositório a seguir do Azure DevOps para o GitHub Enterprise Cloud.

  • Origem do Git (incluindo o histórico de commits)
  • Solicitações de pull
  • Histórico de usuários para solicitações de pull
  • Links de item de trabalho em solicitações de pull
  • Anexos em solicitações de pull
  • Políticas de ramificação para o repositório (políticas de ramificação com escopo de usuário e políticas de ramificação entre repositórios não estão incluídas)

Caso você deseje migrar o Azure Pipelines para o GitHub Actions, entre em contato com o gerente de contas do GitHub.

Limitações dos dados migrados

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

Limitações do GitHub.com

  • Limite de tamanho de 2 GB para um commit individual do Git: nenhum commit individual no repositório Git pode ter mais de 2 GB. Se um dos commits for maior que 2 GB, divida o commit em commits menores que tenham 2 GB ou menos cada.
  • Limite de 255 bytes para referências do Git: nenhuma referê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ão ASCII, 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 100 MB para arquivos: nenhum arquivo individual no repositório Git pode ter mais de 100 MB. Considere o uso do Git LFS para armazenar arquivos grandes. Para obter mais informações, confira "Gerenciar arquivos grandes".

Limitações do GitHub Enterprise Importer

  • Limite de tamanho de 10 GB para um repositório Git: esse limite só se aplica 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 10 GB para metadados: o Importer não pode migrar repositórios com mais de 10 GB de metadados. Os metadados incluem problemas, solicitações de pull, versões e anexos. Na maioria dos casos, os metadados grandes são causados por ativos binários anexados a versões. Você pode excluir versões da migração com o sinalizador migrate-repo do comando --skip-releases e mover as versões manualmente após a migração.
  • 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 obter mais informações, 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 obter mais informações, confira "Como recuperar manequins no GitHub Enterprise Importer".

Introdução

Antes de migrar do Azure DevOps, você deve planejar como executará sua migração. Antes de migrar quaisquer dados, você precisará escolher alguém para executar a migração. Você deve conceder a essa pessoa o acesso necessário à origem e ao destino da migração. Também recomendamos executar uma migração de avaliação primeiro.

Para obter uma visão geral do processo de migração do início ao fim, consulte "Visão geral de uma migração do Azure DevOps para o GitHub Enterprise Cloud".