Usando Git em projetos do Google Code
Æ!!
Resolvi escrever esse post depois de começar a contribuir para o projeto do vimbook, que está no Google Code.
Como o Google Code só usa Subversion ( infelizmente ) e eu sou do mundo Git, resolvi usar a ferramenta Git para lidar com SVN, o git-svn! Com ele você pode clonar um repositório SVN e utilizar como Git, e na hora de “commitar” ele retransforma em SVN.
Já havia tentado usar Git-svn no meu projeto de plugin para wordpress, mas nesse caso eu já tinha um repositório Git e fui tentar mandar para um repositório SVN vazio, o que só me deu dor de cabeça, e no fim das contas acabei jogando para um repositório SVN qualquer só para mandar para o WordPress. No fim das contas, depois desse problema com o WordPress eu só tinha abominado o git-svn, mas agora eu estou começando a descobrir o seu valor.
Meus agradecimentos ao Carlan Calazans que me deu umas dicas de Git-svn quando eu comecei a tentar usar no projeto do plugin, que naquele momento não me fora de grande serventia, mas depois ajudaram bastante!
Bem, agora chega de papo-furado e vamos a parte que interessa…Códigos e How To!
Primeiramente vamos baixar o código ( estou usando como exemplo o vimbook ):
git-svn clone https://vimbook.googlecode.com/svn/trunk/ vimbook --username seu.usuario.do.google
Ao digitar isso ele vai pedir uma senha que ele gera para a sua conta, e seus commits ficarão ligados a sua conta do Google. Para obter a sua senha é só acessar a página de settings do google code com a sua conta.
Após digitar a sua senha ele vai começar a receber todos os commits do SVN e converter para Git! O processo pode ser um pouco demorado, dependendo do tamanho do repositório SVN que você está importando.
Quando terminar você terá um repositório Git normal funcionando, e você pode trabalhar normalmente com ele, fazendo seus branchs e tudo mais!
Vamos ver como seria um fluxo simples para você fazer uma alteração usando branch e mandar de volta para o repositório:
git checkout -b new_changes
Branch criado! Faça as suas alterações… Após as alteraçoes feitas faça os commits normalmente como se faz no Git e volte ao master para ver o que há de novo no repositório central:
git checkout master git-svn rebase
Com isso ele vai receber as novas alterações do repositório! Agora é a hora de fazer um merge do seu branch com a ultima versão do master:
git merge new_changes
Se tiver algum conflito resolva-os normalmente e agora é hora de enviar as suas alterações novamente ao Google Code:
git-svn dcommit
Pronto! Você está contribuindo para um projeto do Google Code utilizando Git.
Há braços
2 Comments to Usando Git em projetos do Google Code
Leave a comment
Search
Recent Posts
WP Cumulus Flash tag cloud by Roy Tanck and Luke Morton requires Flash Player 9 or better.
Categories
Personal Links
Archives
- May 2011
- April 2011
- March 2011
- January 2011
- December 2010
- October 2010
- September 2010
- August 2010
- July 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
Tudo fica mais simples, não é?
Eu gosto muito de como o git trata os branches e os merges. Isso é de extrema importância no desenvolvimento de um aplicativo e básico para qualquer controle de versão. O pessoal da empresa onde trabalho reclamou a falta de uma gui, mas realmente não acho que seja necessário.
Abração!
Æ!!
Quanto a interface gráfica, já tem o TortoiseGit ( http://code.google.com/p/tortoisegit/ ), que dá para fazer todas as coisas simples do Git.
Se for usuário Linux que ta pedindo interface gráfica, eu não tenho mais comentários.
Há braços