Skip to main content

Como importar um repositório do Controle de Versão do Team Foundation

Você pode importar um repositório do TFVC (Controle de Versão do Team Foundation) convertendo o repositório em Git e efetuando push do repositório Git para o GitHub Enterprise Server.

Sobre as importações do Controle de Versão do Team Foundation

Recomendamos usar o Azure Repos para converter seu repositório do TFVC (Controle de Versão do Team Foundation) no Git. No entanto, o Azure Repos migra apenas até 180 dias de histórico. Caso você deseje manter um histórico maior, use git-tfs.

Observação: o Azure Repos migra apenas até 180 dias de histórico. O estado do repositório antes do limite de 180 dias será migrado em um só commit inicial. Para manter um histórico maior, confira "Como fazer a migração com o git-tfs".

Para seguir estas etapas, você precisa usar um sistema macOS ou Linux e ter as seguintes ferramentas instaladas:

  1. Crie um novo repositório em GitHub. Para evitar erros, não inicialize o novo repositório com arquivos LEIAME, de licença ou gitignore. É possível adicionar esses arquivos após push do projeto no GitHub Enterprise Server. Para obter mais informações, confira "Criar um repositório".

  2. Para confirmar se o Git está instalado no computador, execute git --version.

    A saída será parecida com git version 2.40.0.

  3. Para confirmar se o Git LFS está instalado no computador, execute git lfs --version.

    A saída será parecida com git-lfs/3.1.4 (GitHub; darwin arm64; go 1.18.1).

  4. Converta seu repositório do TFVC no Git usando o Azure Repos. Para obter instruções, confira Importar repositórios do TFVC para o Git no Microsoft Learn.

  5. Para clonar o repositório do Azure Repos no computador local, execute git clone --mirror URL, substituindo a URL pela URL de clone do repositório do Azure DevOps.

    Para identificar a URL de clone do repositório do Azure DevOps, confira Obter a URL de clone de um repositório Git do Azure Repos no Microsoft Learn.

  6. Para adicionar o repositório GitHub como um repositório remoto, execute git remote add origin URL, substituindo URL pela URL do repositório GitHub criado anteriormente, como https://github.com/octocat/example-repository.git.

  7. Para efetuar push do repositório para o GitHub, execute git push --mirror origin.

    Se o repositório contiver arquivos maiores que o limite de tamanho do arquivo do GitHub Enterprise Server, poderá ocorrer uma falha no push. Mova os arquivos grandes para o Git LFS executando git lfs import e tente novamente.

Como migrar com o git-tfs

Se você migrar com o git-tfs, manterá o histórico completo do repositório do TFVC.

Para seguir estas etapas, você precisa usar o Windows e ter as seguintes ferramentas instaladas:

  1. Crie um novo repositório em GitHub. Para evitar erros, não inicialize o novo repositório com arquivos LEIAME, de licença ou gitignore. É possível adicionar esses arquivos após push do projeto no GitHub Enterprise Server. Para obter mais informações, confira "Criar um repositório".

  2. Para confirmar se o Git está instalado no computador, execute git --version.

    A saída será parecida com git version 2.40.0.

  3. Para confirmar se o git-tfs está instalado no computador, execute git tfs --version.

    A saída começará com algo semelhante a git-tfs version 0.32.0.0 (TFS client library 16.0.0.0 (MS)).

    Se você receber uma saída semelhante a Unable to load DLL 'Microsoft.VisualStudio.Setup.Configuration.Native.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E), verifique se o Visual Studio Team Explorer está instalado corretamente.

  4. Para confirmar se o Git LFS está instalado no computador, execute git lfs --version.

    A saída será parecida com git-lfs/3.1.4 (GitHub; darwin arm64; go 1.18.1).

  5. Caso ainda não tenha feito isso, configure o Git com seu nome e endereço de email executando git config --global user.name "NAME" e git config --global user.email EMAIL, substituindo NAME pelo seu nome e EMAIL pelo seu endereço de email.

  6. Execute git tfs clone, transmitindo a URL do repositório do TFVC e o caminho do repositório como argumentos. Por exemplo, para converter o repositório example de https://dev.azure.com/octocat em um repositório Git armazenado no diretório /example, execute git tfs clone --branches=all https://dev.azure.com/octocat $/example.

  7. Acesse o diretório do repositório Git recém-criado.

  8. Para adicionar o repositório GitHub como um repositório remoto, execute git remote add origin URL, substituindo URL pela URL do repositório GitHub criado anteriormente, como https://github.com/octocat/example-repository.git.

  9. Para efetuar push do repositório para o GitHub, execute git push --mirror origin.

    Se o repositório contiver arquivos maiores que o limite de tamanho do arquivo do GitHub Enterprise Server, poderá ocorrer uma falha no push. Mova os arquivos grandes para o Git LFS executando git lfs import e tente novamente.