Caelum | Ensino e Inovação - Cursos de Java, Scrum, Ruby on Rails


Projeto open source: Caelum git-reports

Por Pedro Matiello em 03/07/09

Completamos recentemente, aqui na Caelum, a migração de todos os nosso projetos para git, o sistema de controle de versões distribuído criado inicialmente por Linus Torvalds para o desenvolvimento do kernel Linux. Esta migração, realizada pelo Cauê Guerra e pelo Jonas Abreu, foi motivada por algumas características do git que se mostraram úteis em alguns projetos internos e pessoais; em especial, a possibilidade de fazer commits locais (muito útil quando não há acesso à internet) e os branches locais baratos.

Em vez de mantermos nós mesmos nossos repositórios, optamos por hospedá-los no GitHub. Esse serviço oferece uma interface web bastante prática e nos permite, convenientemente, centralizar nossos projetos públicos e privados em um único serviço. Contudo, entre tantas facilidades, sentimos falta de uma forma de observar a atividade recente em todos os nossos repositórios de forma centralizada e de ter alguma medida da atividade de cada desenvolvedor em cada projeto – e vice-versa. E para atender a essa necessidade, eu e o Cauê Guerra escrevemos o Caelum git-reports, um pequeno projeto em Ruby.

O software gera, a partir de um conjunto de repositórios git, uma medida do impacto de cada desenvolvedor (discriminado por projeto), do impacto em cada repositório (discriminado por desenvolvedor) e um resumo de todos os commits recentes, apresentando o resultado em HTML. Adotamos a mesma definição de impacto usada pelo GitHub: a soma das linhas acrescentadas e removidas. De fato, uma medida bastante grosseira, mas que tem suas utilidades. O projeto é muito novo, e podemos facilmente adicionar novas funcionalidades, como critérios para verificação de atividade nos repositórios, além de gráficos.

Quem quiser saber mais sobre o git pode consultar o tutorial para preguiçosos como ponto de partida. Outros recursos úteis podem ser encontrados no site oficial e no índice de guias do GitHub. Quem prefere o formato de vídeos também deve conferir o GitCasts.

  • Share/Bookmark

8 Comments »

  1. Parabéns pela iniciativa! Nunca vi nada parecido.

    Vou dar uma olhada com calma nesse projeto neste final de semana =D

    Abs
    Alberto

    Comment by Alberto Leal — July 3, 2009 @ 5:27 am

  2. Legal o projeto. Aqui estou usando GitHub + Pivotal Tracker + Twitter: toda movimentação de stories e commits vai para um twitter private!

    Comment by Davis — July 3, 2009 @ 5:28 am

  3. Maneiríssimo!

    E realmente, o recurso de commit local é um grande diferencial. Sem dúvida o que eu mais sinto falta no SVN.

    Comment by Diogo — July 3, 2009 @ 10:09 am

  4. Parabéns, turma. Trabalho fantástico, já vou adotar nos projetos aqui

    Comment by CMilfont — July 3, 2009 @ 12:09 pm

  5. Belíssima iniciativa de migrar os projetos da empresa para Git. Meus parabéns!

    Comment by Leonardo Pinheiro — July 3, 2009 @ 1:14 pm

  6. SVN, CVS e GIT.

    Tem a mesma finalidade?

    Se sim por que não usar o mais maduro SVN? Existe algum lugar do mundo hoje sem internet?

    []’s

    Comment by Alexandre Ferreira — July 17, 2009 @ 11:26 am

  7. Olá, Alexandre. Pessoalmente, gosto dos commits e branches locais do git. Todas as operações são instantâneas e você só manda de volta para o servidor o que realmente deve ser compartilhado (a rigor, um repositório central nem é necessário).

    De fato, poucos lugares não têm internet hoje, mas, ainda assim, ela cai às vezes. E o git nos permite manter um fluxo de trabalho normal nesse período.

    Sobre a maturidade, acho que não é um problema. Vários projetos grandes têm usado o git com sucesso. Uma lista está disponível em http://git.or.cz/gitwiki/GitProjects

    Ainda, existe uma comparação bastante equilibrada entre git e svn em http://git.or.cz/gitwiki/GitSvnComparsion

    Abraço

    Comment by Pedro Matiello — July 17, 2009 @ 4:40 pm

  8. Parabéns,
    mas vc deveria falar sobre a política de segurança!

    Comment by Clebs — August 1, 2009 @ 2:29 am

RSS feed for comments on this post. TrackBack URL

Leave a comment




Caelum | Ensino e Inovação
São Paulo: Rua Vergueiro, 3185, cj. 87, próximo ao Metrô Vila Mariana   |   Tel. (11) 5571-2751
Rio de Janeiro: Rua Senador Dantas, 80, cj. 307/308 - Centro   |   Tel. (21) 2220-4156 ou 2297-0033
Brasília: SCS Qd. 8 Bl. B-50, Sala 521 - Ed. Venâncio 2000   |   Tel. (61) 3039-4222