sexta-feira, 25 de setembro de 2009

SVN (Subversion)

O SVN é um conhecido sistema de controlo de sources (SCM).
Antes de mais, devo explicar o que é um sistema SCM.
Um sistema SCM,consiste normalmente num servidor, que contêm um conjunto de repositórios (dados) para gestão de source code. Estes tipos de sistemas têm grandes vantagens, tais como:
-A informação encontra-se centralizada num único sitio (servidor).
-Permite gestão de versões de source code.
-Permite reposição de um determinado source code à imagem que ele estava numa determinada data.
-Permite efectuar branches e tags. Uma tag é uma imagem do código a uma determinada data, enquanto que um branch é um desenvolvimento paralelo que é efectuado para além do desenvolvimento principal (HEAD).
-Permite gestão de código por equipa. Podem estar várias pessoas a trabalhar nos mesmos projectos e até no mesmo source-code ao mesmo tempo.
-Gestão de conflitos que possam surgir com o trabalho em equipa.
-Comparação de versões de ficheiros (tipo windiff).

Para se trabalhar com o SVN em particular, aconselho-vos a visitar a página da SVN.
Aqui poderão encontrar plugins para os mais diversos IDEs nomeadamente o eclipse (é o que eu uso).

O SVN tem como intuito substituir um SCM já existente (CVS).
Para além do SVN existem ainda outros SCM tais como o perforce e o GIT que está a evoluir a olhos vistos podendo-se tornar como o SCM mais utilizado.

GIT-SCM

Para aficcionados do mundo .NET existe ainda o ANKH que poderá ser integrado no Visual Studio.

Sem comentários: