CVS – Gerenciamento de Versões Priscila T. L. Rossato.
-
Upload
monica-angela-cerveira-garrau -
Category
Documents
-
view
217 -
download
3
Transcript of CVS – Gerenciamento de Versões Priscila T. L. Rossato.
![Page 1: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/1.jpg)
CVS – Gerenciamento de Versões
Priscila T. L. Rossato
![Page 2: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/2.jpg)
O que é o CVS?
CVS é um sistema de controle de versões (Concurrent Versions System).
Com CVS você pode gerenciar diferentes versões de um programa (ou projeto).
Pode atualizar, adicionar e eliminar arquivos e diretórios ao programa.
Pode criar ramificações de um projeto. Múltiplos programadores podem trabalhar ao mesmo
tempo no mesmo projeto. http://www.cvshome.org/
![Page 3: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/3.jpg)
Descrição Básica
Repositório (Servidor CVS)– é o repositório central:– é uma árvore de arquivos e diretórios que corresponde à
última versão de cada um dos arquivos-fonte do projeto e armazena também todo o histórico de modificações realizadas
– adicionalmente, contém arquivos criados pelo programa cvs para o gerenciamento das versões.
– acesso nunca é direto, mas através de ferramentas do pacote CVS
Módulos: nomes definidos pelo usuário para subconjuntos da árvore de diretórios do repositório
![Page 4: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/4.jpg)
Descrição Básica
Cópia de Trabalho (Cliente CVS):– cada usuário trabalha em sua própria cópia dos arquivos e
diretórios de um repositório, utilizada no desenvolvimento– usuários trabalham concorrentemente: nada é “travado”
(lock files) ou “reservado” ;– Cada usuário pode criar sua própria cópia dos arquivos a
qualquer momento - normalmente pega-se as últimas versões;
– versões anteriores também podem ser obtidas facilmente;
![Page 5: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/5.jpg)
Conceitos Básicos
Versão: – Todo arquivo tem uma versão que é automaticamente
definida pelo cvs. – De uma maneira geral a versão do arquivo é redefinida a
cada alteração do arquivo que foi gravada no repositório.
![Page 6: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/6.jpg)
Conceitos Básicos
Tag: – É um nome simbólico
dado a uma determinada versão do projeto, pode ser usado para delimitar etapas do desenvolvimento de um projeto.
– É possivel reverter o projeto para uma versão anterior através da tag.
![Page 7: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/7.jpg)
Conceitos Básicos
Release: – É uma versão definitiva de todos os arquivos do projeto.– A diferença entre o tag e o release, é que o tag não modifica a
versão dos arquivos do projeto. O release modifica a versão de todos os arquivos, dando a todos os arquivos um mesmo número de versão.
– Depois de definido o release o mesmo não pode ser modificado.
![Page 8: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/8.jpg)
Conceitos Básicos
Brach: – Um branch (ramo) é usado para dividir um projeto.
Normalmente existe o ramo mestre e os ramos secundários.– É possivel fundir dois branches (merge) de maneira
automática
![Page 9: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/9.jpg)
Principais Comandos
checkout: obter uma cópia de um módulo para a área de trabalho local
commit: enviar as alterações da cópia local para o repositório
update: atualizar a cópia local com eventuais mudanças do repositório
add/remove: adicionar e remover arquivos de um módulo
diff: compara diferentes versões dos arquivos
![Page 10: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/10.jpg)
Diagrama de Operação
![Page 11: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/11.jpg)
TortoiseCVC
TortoiseCVS é uma interface gráfica de um Cliente CVS.
Fácil e intuitiva Permite que os desenvolvedores controle os
arquivos do CVS diretamente pelo Windows Explorer
![Page 12: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/12.jpg)
Entendendo os ícones
![Page 13: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/13.jpg)
Checkout - Obter um módulo
![Page 14: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/14.jpg)
Commit – CVS Gravar
Novo Arquivo: Primeiro tem que Adicionar o arquivo e depois Gravar
Alterar Arquivo Existente: Apenas Gravar o arquivo
Excluir Arquivo: Deve Remover o arquivo e depois Gravar a remoção
![Page 15: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/15.jpg)
Update – CVS Atualizar
Quando dois ou mais desenvolvedores modificam o mesmo arquivo-fonte, o CVS irá automaticamente fundir as modificações durante o commit
Entretanto, se dois (ou mais) desenvolvedores modificam a mesma linha, o CVS registra um conflito e aceita apenas o primeiro commit realizado
![Page 16: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/16.jpg)
Conflitos
O CVS deixará indicações do conflito na sua cópia de trabalho, os arquivos em conflito contém marcações na forma: <<<<< <nome do arquivo>
[versão local do código] ===== [versão do repositório]>>>>> <número da versão no repositório>
Essas marcações deixam o código "incompilável“ Por garantia, o CVS faz uma cópia da versão local antes de
colocar as marcações (pe. .#usanConst.pas.1.41) O conflito deve ser resolvido manualmente pelo
desenvolvedor, onde ele deve escolher qual é o código correto
![Page 17: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/17.jpg)
Utilitários
Diferenças: mostra visualmente a diferença entre dois arquivos.
![Page 18: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/18.jpg)
Utilitários
Histórico: é o histórico de todas as alterações do arquivo (data, autor e comentário).
![Page 19: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/19.jpg)
Utilitários
Anotações: é possível ver quem alterou cada linha do arquivo e em qual versão.
![Page 20: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/20.jpg)
Alteração Manual do Repositório (Linux)
Em algumas situações é preferível alterar manualmente o repositório, ao invés de utilizar os comandos add e remove:– para mover diretórios e preservar seu conteúdo
inalterado– para mover arquivos e manter seu histórico– para remover arquivos e diretórios
definitivamente do CVS, inclusive seus históricos
![Page 21: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/21.jpg)
Atenção !!!
SEMPRE LEMBRE DE COLOCAR O COMENTÁRIO AO GRAVAR O ARQUIVO
Todos os Forms devem ser gravados em forma de Texto, para isso sempre selecione a opção “Text DFM”
Sempre lembre de adicionar as novas classes ao projeto
![Page 22: CVS – Gerenciamento de Versões Priscila T. L. Rossato.](https://reader035.fdocument.pub/reader035/viewer/2022062522/570638521a28abb8238f99f3/html5/thumbnails/22.jpg)
Referências
Uso do CVS com Eclipse –– http://hotwork.sourceforge.net/hotwork/manual/ecl
ipse/eclipse-user-guide.html#CONTROLE_DE_VERS%C3O
Uso do CVS com Tortoise –– http://www.tortoisecvs.org/