VOCÊ ESTÁ EM: Home > Radar > Dica do Dia > Migração de repositório git do GITHUB para o BITBUCKET
Migração de repositório git do GITHUB para o BITBUCKET
20/09/2014

Mecanismos de versionamento como o GIT são fundamentais para a programação colaborativa. Por conta disso, serviços como o Github ( github.com ) se tornaram extremamente populares pois além da hospedagem dos repositórios, eles oferecem painéis de controle, wiki, fórums para problemas, webhooks e diversos outros benefícios, além de permitir que pessoas anonimas possam acessar conteúdo de código aberto, fazer uma cópia, uma derivação e contribuir com o autor original.

As empresas podem se beneficiar destes serviços criando contas corporativas e utilizando os repositórios em modo privado entre colaboradores previamente cadastrados.

É neste ponto que as diferenças começam a aparecer entre os vários serviços existentes. O Github utiliza uma licença que cobra por repositório privado, mas permite cadastrar um número infinito de colaboradores. Seu concorrente, o Bitbucket, possui outro raciocínio comercial, muito interessante para pequenas empresas: seu plano gratuito comporta 5 usuários e infinitos repositórios privados.

Se você já tem repositórios no GITHUB e achou interessante o modelo de negócios do Bitbucket, saiba que é possível puxar automaticamente o conteúdo de um repositório através de um recurso no próprio painel de controle do Bitbucket. Trata-se da opção de “importar repositório”.

Screen Shot 2014-09-17 at 16.55.23

 

 

 

 

 

Ao importar um repositório do GITHUB, você deve informar alguns dados como a url, usuário e senha. O Bitbucket fará uma cópia completa de seu repositório e a partir daí você pode deixar seu Github de lado.

Vem outra pergunta: e eu vou ter que clonar um novo repositório na minha máquina local? E se for um repositório muito grande? A resposta é: não! você pode alterar a configuração do seu repositório local, apontando-o para a nova URL da bitbucket.

O arquivo chama-se “config”, e fica num diretório escondido chamado “.git” dentro da pasta onde seu repositório foi clonado. Abra o arquivo e localize a url, substituindo-a pela do bitbucket. Ex:

Antes:

[core]
   repositoryformatversion = 0
   filemode = true
   bare = false
   logallrefupdates = true
[remote "origin"]
   url = <b>https://github.com/suaempresa/hello-world.git
   </b>fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
   remote = origin
   merge = refs/heads/master

Depois:
[core]
   repositoryformatversion = 0
   filemode = true
   bare = false
   logallrefupdates = true
[remote "origin"]
   url = <b>https://bitbucket.org/suaempresa/hello-world.git
   </b>fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
   remote = origin
   merge = refs/heads/master

Faça um teste de “pull” e veja que o repositório deverá estar sincronizado rapidamente, pois você já tem a cópia local dos dados e metadados.

A partir desta mudança seus pulls, commits e pushes serão feitos diretamente.

Happy coding with Bitbucket!