Git disponível
Aos desenvolvedores, um recado rápido:
Já está disponível em alguns servidores Linux o Git por SSH nos nossos planos de hospedagem de sites.
A descrição do Git, nas palavras de nosso parceiro e cliente, o Julio Santos Monteiro do development.log ou então na Wikipédia.
“O Git não é nem considerado um sistema de controle de versões, mas sim um sistema de controle de filesystem.
Ele foi criado pelo Linus Torvalds (pai do Linux) em 2005, e tem uma abordagem totalmente diferente de outros CVSs. Ele é, de longe, absurdamente rápido e trabalha de maneira totalmente distribuída, mas mesmo assim mantém-se simples e flexível. Tanto é que ele é muito usado como um CVS, mas tem gente que usa para backup, tem gente que usa para snapshots, etc.
Uma das principais vantagens dele é a absurda facilidade que se tem de criar branches e realizar merges. Devido a arquitetura dele, não há praticamente trabalho algum a se fazer quando você quer realizar merge de branches diferentes. De fato, o recorde atual é de 12 branches sendo juntados em um único commit, que ocorreu a alguns meses no kernel do Linux. Isso, com Subversion é impossível.
Peixes grandes que utilizam o Git: Linux Kernel, X.org, OLPC, Ruby on Rails e diversos softwares da Apache Software Foundation. Isso, claro, sem contar que praticamente qualquer plugin ou gem que você quiser tem um repositório Git, seja oficial ou seja um “wrapper” para o original.
Ah, quase esqueci: uma das principais vantagens do Git é poder fazer o seguinte (vou falar com termos do Subversion para facilitar a compreensao, mas em Git se utiliza outros termos):
- fazer um checkout do repositório
- criar uma branch na sua máquina (ou seja, eu peguei uma copia do repositório original e estou fazendo uma ramificacao na minha maquina local, isso tudo apenas com 1 comando: git checkout -b meu_ramo, sem necessitar nem tocar no servidor)
- Fazer diversos commits com modificacoes que eu fiz (de maneira totalmente offline! isso é impossível em subversion. Ou seja, posso ficar sem internet que mesmo assim consigo seguir o fluxo normal de trabalho)
- Quando eu finalizar, eu pego internet novamente e faco merge do meu branch com o repositório oficial.
Isso tudo voce faz com os seguintes comandos:
$ git clone http://github.com/rails/rails.git $ cd rails $ git checkout -b minhas_modificacoes # trabalha trabalha trabalha $ git commit -a -m “Minhas alteracoes” # trabalha trabalha trabalha $ git commit -a -m “Arrumei um bug” $ git checkout master $ git merge minhas_modificacoes $ git push origin master
Pronto
Rapaz, se você gosta de desenvolvimento, te garanto que é algo sensassional que você vai gostar. Se quiser mais informacoes, tem tutorial de Git no site do http://www.akitaonrails.com, video-aula gratuita no http://www.gitcasts.com e dá para brincar com Git de graça (sem precisar instalar servidor nem nada) no http://www.github.com ou no http://gitorious.org/ (inclusive o codigo fonte do gitorious é aberto e está no github, que é basicamente um super-servidor Git com uma interface web bombadona).
Abraços!”
Outro abração para você Julio, muito sucesso para você e para teus colegas da e-Genial!.
Aproveito também para fazer um teaser: em breve tem novidades na plataforma de hospedagem Rails da TeHospedo!

