Apache Subversion - SVN



O Subversion (SVN) é um sistema de controle de versão open-source que gerencia arquivos e diretórios controlando as alterações realizadas ao longo do tempo. Além disso, é possível recuperar versões anteriores ou visualizar o histórico de alterações. Tem como ponto forte a utilização em rede, possibilitando que vários usuários possam trabalhar colaborativamente.

Permite a recuperação de versões antigas de dados, ou que se examine o histórico de suas alterações. É um sistema de caráter geral que pode ser usado para gerenciar quaisquer conjuntos de arquivos (código-fonte, arquivos de edição de vídeo, etc.)

O SVN utiliza o conceito de branches, tags e trunk:

·  Trunk: pasta que contém os projetos que estão em desenvolvimento. Todas as atualizações efetuadas dia-a-dia são armazenadas nesta pasta.

·   Branches: pasta que contém “linhas de desenvolvimento” de tal projeto, que entre elas pode haver poucas diferenças, porém uma independe da outra. Quando o projeto está pronto para ser liberado como uma versão estável, a pasta trunk é copiada para a pasta branch e dado um nome de versão. Este branch é congelado, não sofrendo mais alterações, apenas correções. Os testes são efetuados.

·  Tags: quando os testes efetuados na branch estão completos, a versão que se encontra na branch é copiada para a pasta tags, criando a “release”. A pasta tag é empacotada e enviada para o cliente. Qualquer modificação em branch, deve ser copiada para a pasta de tags, após todos os testes. O SVN considera tag apenas uma variação de um branch, e na prática é exatamente como um branch, apenas uma cópia da ramificação atual da árvore.

Entre as principais funcionalidades do Subversion pode-se citar:

·     Versionamento de diretórios
·     Versionamento de renomeação, cópia e exclusão
·     Commits atômicos
·     Merge tracking
·     Bloqueio de arquivos
·     Resolução de conflitos interativos.


Comentários

Postagens mais visitadas