Junior
O que é um sistema de controlo de versões?
sobes.tech IA
Resposta da IA
O sistema de controlo de versões (SCV, VCS) é uma ferramenta que permite rastrear alterações em ficheiros e gerir essas alterações ao longo do tempo.
Principais funções:
- Histórico de alterações: Guardar cada versão do ficheiro com a possibilidade de regressar a qualquer versão anterior.
- Ramificações: Criar linhas de desenvolvimento independentes para experimentos ou trabalho em diferentes funcionalidades em paralelo.
- Fusão: Combinar alterações de diferentes ramificações numa só.
- Sincronização: Alinhar alterações entre cópias locais do código e o repositório central (para SCV distribuídos).
- Acompanhamento de autores: Identificar quem e quando fez uma alteração específica.
Tipos de SCV:
- Centralizados (CVCS): Por exemplo, Subversion (SVN). Um servidor central armazena toda a história. Os clientes trabalham com esta cópia central.
- Distribuídos (DVCS): Por exemplo, Git. Cada utilizador tem uma cópia completa do repositório, incluindo toda a história. O trabalho pode ser feito offline, sincronizando quando necessário.
Vantagens do uso de SCV:
- Trabalho colaborativo: Facilita o trabalho paralelo no código comum.
- Recuperação: Permite reverter facilmente para versões estáveis em caso de erros.
- Rastreabilidade: É possível ver quem, quando e porquê fez cada alteração.
- Cópia de segurança: O histórico de alterações é, em essência, uma forma de backup.
- Gestão de versões: Ajuda a rastrear diferentes versões do produto.
Exemplo de comando Git para guardar alterações:
# Adiciona todos os ficheiros modificados ao índice
git add .
# Cria um commit com uma mensagem que descreve as alterações
git commit -m "feat: Adicionada função de registo"