Um amigo, Stênio, e eu conversávamos sobre um projeto secreto (o Google não pode saber) que ele tem em mente. Pretendemos implementá-lo em Python. Coube a idéia da escolha do controle de versões ao Stênio e ele disse que gostaria de experimentar o Mercurial. Isso por ele ser descentralizado e ter uma grande variedade de ferramentas. A referida característica faz parte dos sistemas de controle de versões chamados distribuídos, tais como o Monotone e o Git. Aliás, segundo li, o Mercurial e o Git seguem as idéias do Monotone.
Um fato importante a citar: o Git foi inicialmente desenvolvido pelo próprio Linus Torvalds para substituir uma solução proprietária, o BitKeeper, na tarefa de ser o repositório da árvore do kernel Linux.
O Mercurial e o Bazaar são exemplos recentes de controles de versões distribuídos desenvolvidos em Python. O Bazaar é utilizado pela Canonical, a empresa responsável pela distribuição Ubuntu, que aliás, sou um dos usuários satisfeitos. Pensei até em adotar o Bazaar em nosso projeto, mas em consideração ao amigo, ficamos mesmo com o Mercurial.
Aqui no trabalho, usamos o Subversion, o já tradicional controle de versões que veio a substituir o CVS na importante tarefa de versionar e centralizar o acesso ao código-fonte dos projetos.
Gostaria que esse post servisse também para os leitores-programadores a considerarem o uso de um sistema de controle de versões, mesmo para seus projetos caseiros. Aos programadores Python, considerem o uso do Bazaar e Mercurial, em especial.
Publicado por Walter Cruz em 29 Abril 2008 às 9:45 am r r
Eu estou usando o mercurial há um tempo e tenho gostado muito! Se estiverem procurando onde hospedar o projeto, sugiro o assembla.