Qual a Importância de Usar um Software de Controlo de Versões?
Software de controlo de versões é um software muito utilizado por programadores com o objectivo de gerir e organizar diferentes versões no desenvolvimento de software.
Este tipo de solução está normalmente implementada em grandes projectos de software, mas cada vez mais é usado em quase todos os projectos que envolvam programação de modo a facilitar a organização e controlo do desenvolvimento por parte de uma equipa.
Alguns dos problemas que podemos encontrar num projecto de desenvolvimento de software são muitas vezes causados pela falta de controlo e gestão das versões. Ao usar um software de controlo de versões é possível fazer rapidamente uma avaliação da situação em que se encontra o desenvolvimento e responder facilmente às seguintes questões:
1 – Quem é que efectuou a ultima alteração ao código e em qual das partes.
2 – A última versão está ou não funcional
3 – Qual o progresso do desenvolvimento
Todas as equipas devem usar um software de controlo de versões, mas podemos rapidamente saber se precisamos ou não de o usar respondendo as seguintes questões:
1 – Alguém já escreveu o código sobre o código criado por outra pessoa por acidente e acabou por perder as alterações?
2 – Tem dificuldades em saber quais as alterações efectuadas em um programa, quando foram feitas e quem as fez?
3 – Tem dificuldade em recuperar o código de uma versão anterior que está em produção?
Se alguma destas situações já tiver acontecido então é porque a equipa necessita de utilizar um software de controlo de versões para se organizar e sobretudo poder recuperar versões anteriores caso existam falhas na nova versão.
As principais vantagens do uso de um software de controlo de versões são:
- Controlo do Histórico: Permitindo com facilidade recuperar o trabalho efectuado anteriormente
- Trabalho em equipa: Torna possível o trabalho num único projecto por vários elementos ao mesmo tempo aumentando a produtividade.- Marcação e uso de versões estáveis: Torna possível a marcação de versões estáveis.
- Ramificação do projecto: Possibilita a divisão do projecto em várias linhas de desenvolvimento que podem ser desenvolvidas paralelamente.
Existem diversos softwares de controlo de versões actualmente, tais como:
- Source Control do Visual Studio
- Tortoise
- Mercurial
- SVN e AnkhSVN
- Team Foundation Server
- Git
- TFS
- Sourcesafe / CVS
Conclusão:
Em projectos complexos torna-se essencial o uso de um software de controlo de versões, pois não só mantém todo o trabalho organizado como é uma segurança ampliando a possibilidade do trabalho em equipa e em diversos componentes paralelamente.
Janeiro 22nd, 2012 at 12:06 am
O tortoise não é um sistema de controlo de versões. É um cliente multi-plataforma para vários “sabores”: tortoiseSVN, tortoiseHG, …