quinta-feira, 24 de junho de 2010

Git: para quem tem mais o que fazer

O Git, ou "bastardo" na gíria britânica, traz muitos aperfeiçoamentos e inovações em relação ao SVN. É como um "de volta para o futuro", porque ele retorna à simplicidade do velho e bom CVS, mantém a robustez do SVN e vai além. Há vários motivos para você mudar, mas posso citar alguns:
  1. É mais rápido;
  2. Mais fácil de operar na linha de comando;
  3. Mais fácil e rápido de configurar o repositório - o Apache+WebDAV+Subversion tem uma série de passos para configurar um servidor, com um repositório e finalmente poder fazer o primeiro versionamento. O Git até tem algo similar para quem quiser continuar na mesma linha. Mas do jeito Git de trabalhar basta fazer "git init" na linha de comando e vc tem um repositório pronto para compartilhar com a sua equipe;
  4. Descentralizado - sem repositório ou servidor central, a menos que vc queira um, por cultura ou conveniência; é aquela coisa: se um nó falha, vc tem todos os outros funcionando; se a rede sai do ar, ninguém para de trabalhar...
  5. Cada "checkout" é na verdade uma cópia integral do repositório, com toda a árvore de histórico, branches e tags, tudo - essa é a característica mais marcante, pois vc pode sair da empresa e fazer um homework sem precisar de VPN, pq vc leva tudo no note, só pra citar uma situação. Os repositórios são facilmente sincronizados, podendo decidir até o que será sincronizado. Não é uma tarefa trivial sincronizar repositórios no SVN ou mesmo particionar um repositório mantendo a árvore de versão completa. No Git, essa é uma função builtin;
  6. A migração a partir do SVN é facilitada - mas não explorei ainda essa funcionalidade, embora tenha visto algumas indicações disso na documentação;
  7. A documentação é clara, objetiva e bem completa;
  8. Enquanto q vc tem o svn:// e o http+webdav como protocolos do SVN, no Git, vc pode publicar o repositório via qualquer protocolo: http, git://, ftp, ssh, rsync, etc... é só escolher. E não precisa de nenhum servidor especial para a publicação  como o SVN, que precisa do Apache;
Assim que puder, devo postar mais coisas aqui sobre o Git. Enquanto isso, faça você mesmo um teste, seguindo o tutorial básico do Git, não levei mais que dez minutos para completá-lo, testando todas as opções apresentadas — então, vale a pena tentar. Se for instalar o Git no Windows, você vai precisar do msysgit, ou do cygwin, mas eles são tipo highlander: só pode haver um!

0 comentários: