Migrar

Migrar

Este guia de migração defende uma sincronização unidirecional do SVN para o Git durante o período de transição. Ou seja: enquanto sua equipe está se sentindo confortável com o Git, ela ainda deve estar fazendo commits apenas no repositório SVN original. Quando você estiver pronto para fazer a troca, o repositório SVN deve congelar no estado em que se encontrar. Em seguida, os desenvolvedores devem começar a fazer os commits nos repositórios Git locais e compartilhá-los via Bitbucket.

Migração do Git: sincronização unidirecional do SVN para o Git

A mudança discreta do SVN para o Git torna a migração muito intuitiva. Todos os desenvolvedores já devem entender os novos fluxos de trabalho do Git que vão usar e ter tido bastante tempo para praticar o uso de comandos do Git nos repositórios locais que clonaram do Bitbucket.

Esta página orienta você durante a etapa final da migração.

Sincronizar o Repositório do Git

Antes de finalizar a migração para o Git, você deve confirmar se o repositório do Git contém quaisquer novas alterações que passaram por commit para o repositório SVN. Você pode fazer essa verificação com o mesmo processo descrito na fase Sincronizar.

git svn fetch java -Dfile.encoding=utf-8 -jar ~/svn-migration-scripts.jar sync-rebase java -Dfile.encoding=utf-8 -jar ~/svn-migration-scripts.jar clean-git --force

Clone o repositório SVN

Embora você ainda possa ver o histórico do projeto pré-Git no repositório migrado, é uma boa ideia fazer backup do repositório SVN caso você precise explorar os dados brutos do SVN. Uma maneira fácil de fazer backup de um repositório SVN é executar o seguinte na máquina que hospeda o repositório SVN central. Se o repositório SVN estiver hospedado em uma máquina Linux, você vai poder usar o seguinte:

svnadmin dump  | gzip -9 > 

Substituir pelo caminho do arquivo do repositório SVN do qual você está fazendo backup e substitua o com o caminho do arquivo compactado que contém o backup.

Tornar o repositório SVN somente leitura

Todos os desenvolvedores agora devem fazer os commits com o Git. Para impor essa convenção, você pode tornar o repositório SVN somente leitura. Esse processo pode variar dependendo da configuração do servidor, mas se você estiver usando o daemon svnserve, você pode alcançar esse resultado editando o arquivo conf/svnserve.conf do repositório SVN. A seção [general] deve conter as seguintes linhas:

anon-access = read auth-access = read

Assim o svnserve é informado de que os usuários anônimos e autenticados só têm permissões de leitura.

Resumo

É tudo o que você precisa saber para migrar um projeto para o Git. Sua equipe agora deve estar desenvolvendo com um fluxo de trabalho puro do Git e aproveitando todos os benefícios do desenvolvimento distribuído. Bom trabalho!

Pronto(a) para aprender Git?

Tente este tutorial interativo.

Comece agora mesmo