Buscar

Prévia do material em texto

Controle de Versão
• Permite que os artefatos evoluam de forma distribuída, concorrente e disciplinado.
• Evita perdas ou sobre posição durante o desenvolvimento e a manutenção do artefato.
• Ex.: GIT, SVN, CVS, IBM Relational ClearCase, Microsoft Visual Source Safe.
• Repositório: local de armazenamento dos artefatos que estão sob controle da Gerência de
Configuração.
• Item de configuração: todo artefato produzido e controlado pelo processo da Gerência de
Configuração de software. São identificados de maneira única e sua evolução é passível de
rastreamento.
• Operações: 
◦ CHECKIN: submeter itens de configuração para o repositório de cada operação
realizada, a versão do item de configuração é incrementada de uma unidade.
◦ CHECKOUT: baixar do repositório cópias de configuração. Políticas de trabalho
pessimista e otimista.
• Baseline: conjunto de itens de configuração formalmente aprovado que serve de base para as
etapas seguintes de desenvolvimento.
• Release: uma Baseline, que é um conjunto de itens de configuração formalmente entregue
aos clientes ao final de uma interação.
• Branch (ramificação: ramificação da linha principal do controle de versão que permite
modificações sobre um item de configuração, permitindo realizações em paralelo de forma
isolada e independente.
• Merge: junção que une as modificações efetuadas em paralelo sobre o mesmo item de
configuração e produz a nova versão desse item que contem a soma das modificações.
GIT
• Um sistema de controle de versão distribuído (Peer-to-peer), desenvolvido por Linus
Torvalo.
• Cada usuário tem um repositório local que consiste de:
◦ Um diretório de trabalho que contém os arquivos reais.
◦ Um índice que desempenha o papel de uma área de teste.
◦ Um Head que é um ponteiro para o último comentário.
• Cada repositório local tem um ramo master.
• As operações são atômicas, ou seja, uma ação pode ter exito ou falha (sem fazer nenhuma
alteração).
• Comandos: 
◦ GIT INIT : criar um repositório local.
◦ GIT CLONE : clonar um repositório local ou remoto.
◦ GIT ADD : Adicionar um item ao repositório local.
◦ GIT COMMIT : gravar as mudanças do Head.
◦ GIT PULL : empurra as mudanças para um repositório remoto.
◦ GIT PUSH : atualiza o repositório Local
SUBVERSION
• Um sistema de controle de versão centralizado (Cliente-servidor) desenvolvido para
substituir o CVS. 
• As transações entre cliente servidor segue a instrução “tudo ou nada”.
• Gerencia todos os tipos de arquivos, inclusive diretórios.
• Tem suporte para acesso transparente via protocolo HTTP.
• Comandos: 
◦ SVN ADD: adiciona um arquivo ou diretório ao controle de versão.
◦ SVN COMMIT: grava as mudanças no servidor.
◦ SVN UPDATE: sincroniza um repositório do servidor.

Mais conteúdos dessa disciplina