Sobre as migrações de repositório com o GitHub Enterprise Importer
As migrações para o GitHub Enterprise Cloud incluem migrações entre contas do GitHub.com e, caso você esteja adotando o residência de dados, migrações para o subdomínio da sua empresa do GHE.com.
Você pode executar a migração com a GitHub CLI ou a API.
A GitHub CLI simplifica o processo de migração e é recomendada para a maioria dos clientes. Os clientes avançados com necessidades de personalização intensiva podem usar a API para criar integrações próprias ao GitHub Enterprise Importer.
Pré-requisitos
- Recomendamos fortemente que você faça uma execução de avaliação da migração e conclua a migração de produção logo em seguida. Para saber mais sobre execuções de avaliação, confira Visão geral de uma migração entre produtos GitHub.
- Certifique-se de entender os dados que serão migrados e as limitações de suporte conhecidas do Importador. Para obter mais informações, confira Sobre migrações entre produtos GitHub.
- Embora não seja necessário, recomendamos interromper o trabalho durante a migração de produção. O Importer não dá suporte a migrações delta, ou seja, as alterações que ocorrerem durante a migração não serão migradas. Se você optar por não interromper o trabalho durante a migração de produção, precisará migrar manualmente essas alterações.
- Na organização de origem, você precisa ser um proprietário da organização ou ter a função de migrador. Para saber mais, confira Gerenciando o acesso para uma migração entre produtos GitHub.
- Na conta empresarial de destino, você precisa ser um proprietário da empresa.
Etapa 1: Instalar a GEI extension of the GitHub CLI
Se essa for sua primeira migração, você precisará instalar a GEI extension of the GitHub CLI. Para obter mais informações sobre a GitHub CLI, confira Sobre o a CLI do GitHub.
-
Instale a GitHub CLI. Para obter instruções de instalação para GitHub CLI, veja o repositório GitHub CLI.
Note
Você precisa ter a versão 2.4.0 ou mais recente da GitHub CLI. Verifique a versão instalada com o comando
gh --version
. -
Instale o GEI extension.
Shell gh extension install github/gh-gei
gh extension install github/gh-gei
Sempre que precisar de ajuda com a GEI extension, use o sinalizador --help
com um comando. Por exemplo, gh gei --help
listará todos os comandos disponíveis, e gh gei migrate-repo --help
listará todas as opções disponíveis para o comando migrate-repo
.
Etapa 2: Atualizar a GEI extension of the GitHub CLI
A GEI extension é atualizada semanalmente. Para garantir que você esteja usando a última versão, atualize a extensão.
gh extension upgrade github/gh-gei
Etapa 3: Definir variáveis de ambiente
Para usar a GEI extension para migrar para o GitHub Enterprise Cloud, crie personal access tokens (classic) que possam acessar a organização de origem e a empresa de destino e defina os personal access tokens (classic) como variáveis de ambiente.
-
Crie e registre um personal access token que atenda a todos os requisitos para autenticação da organização de origem para as migrações da organização. Para saber mais, confira Gerenciando o acesso para uma migração entre produtos GitHub.
-
Crie e registre um personal access token (classic) que atenda a todos os requisitos para autenticação da empresa de destino para as migrações da organização.
-
Defina variáveis de ambiente para os personal access tokens (classic), substituindo TOKEN nos comandos abaixo pelos personal access tokens (classic) que você registrou acima. Use
GH_PAT
para a empresa de destino eGH_SOURCE_PAT
para a organização de origem.-
Se você estiver usando o Terminal, use o comando
export
.Shell export GH_PAT="TOKEN" export GH_SOURCE_PAT="TOKEN"
export GH_PAT="TOKEN" export GH_SOURCE_PAT="TOKEN"
-
Se você estiver usando o PowerShell, use o comando
$env
.Shell $env:GH_PAT="TOKEN" $env:GH_SOURCE_PAT="TOKEN"
$env:GH_PAT="TOKEN" $env:GH_SOURCE_PAT="TOKEN"
-
-
Se você estiver migrando para o GitHub Enterprise Cloud com residência de dados, por questões de conveniência, defina uma variável de ambiente para a URL de API base da sua empresa. Por exemplo:
Shell export TARGET_API_URL="https://api.octocorp.ghe.com"
export TARGET_API_URL="https://api.octocorp.ghe.com"
Você usará essa variável com a opção
--target-api-url
em comandos executados com a GitHub CLI.
Etapa 4: Migrar sua organização
Para migrar uma organização, use o comando gh gei migrate-org
.
gh gei migrate-org --github-source-org SOURCE --github-target-org DESTINATION --github-target-enterprise ENTERPRISE
gh gei migrate-org --github-source-org SOURCE --github-target-org DESTINATION --github-target-enterprise ENTERPRISE
Note
Se você estiver migrando para o GHE.com, adicione --target-api-url TARGET-API-URL
, em que TARGET-API-URL é a URL da API base para o subdomínio da sua empresa. Por exemplo: https://api.octocorp.ghe.com
.
Substitua os espaços reservados no comando acima pelos valores a seguir.
Espaço reservado | Valor |
---|---|
SOURCE | Nome da organização de origem |
DESTINO | O nome que você deseja dar à nova organização. Elas não podem ser compartilhadas por outra organização na plataforma de destino. |
ENTERPRISE | O campo de dados dinâmico da empresa de destino, que você pode identificar conferindo a URL da sua conta empresarial, https:/ ou https:/ . |
Etapa 5: Validar a migração e verificar o log de erros
Após a conclusão da migração, recomendamos que você verifique o repositório do log de migração. Para saber mais, confira Como acessar os logs de migração do GitHub Enterprise Importer.
Por fim, recomendamos que você faça uma verificação de integridade da sua organização e dos repositórios migrados.