• Nenhum resultado encontrado

Universidade Estadual de Campinas. CVS - Concurrent Version System

N/A
N/A
Protected

Academic year: 2021

Share "Universidade Estadual de Campinas. CVS - Concurrent Version System"

Copied!
42
0
0

Texto

(1)

Universidade Estadual de Campinas – UNICAMP 1 Programa de TIC – Curso CVS – Concurrent Version System

Universidade Estadual de Campinas

CVS - Concurrent Version System

(2)

Universidade Estadual de Campinas – UNICAMP 2 Programa de TIC – Curso CVS – Concurrent Version System

Módulo 1 – Introdução ao CVS...3 Visão geral...4 Vantagens ...6 Arquitetura do CVS ...7 O repositório ...8 Revisões ...11 Tags ...12

Branching and merging ...13

Módulo 2 – Administração do CVS ...15

Obtendo e Instalando o CVS ...16

Criando um repositório ...17

Configurando o servidor...18

Criando grupo e usuário ...22

Arquivo de senhas...23

Acesso somente-leitura (read-only) ...24

Exercicio 1...25

Módulo 3 – Comandos básicos...26

O comando CVS ...27 Login ...28 Import ...29 Checkout...30 Update ...31 Commit ...32 Diff ...33 Release ...34 Add...35 Remove...36 Status ...37 Exercicio 2...38 Módulo 4 – Dicas...39 Interface gráfica ...40 Referências ...41 Coordenação do Programa ...42

(3)

Universidade Estadual de Campinas – UNICAMP 3 Programa de TIC – Curso CVS – Concurrent Version System

Módulo 1 – Introdução ao CVS

Programa de TIC - Unicamp CVS – Concurrent Version System

Módulo 1

(4)

Universidade Estadual de Campinas – UNICAMP 4 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Visão geral

CVS - Cuncurrent Version Systeméum sistema de controle de versões de código fonte de programas.

Este sistema mantém um histórico das alterações feitas nos programas

•Podemos recuperar versões mais antigas do código para descobrir erros introduzidos durante o desenvolvimento

•Podemos manter uma lista de comentários associados às versões do código para não perdermos contexto das mudanças

•Às vezes queremos saber exatamente o que foi mudado de uma versão a outra do programa

•Ajuda a evitar conflitos em código desenvolvido no acesso simultâneo entre uma equipe de desenvolvedores

Visão geral

CVS - Cuncurrent Version System é um sistema de controle de versões de código fonte de programas.

Este sistema mantém um histórico das alterações feitas nos programas

 Podemos recuperar versões mais antigas do código para descobrir erros introduzidos durante o desenvolvimento

• Podemos manter uma lista de comentários associados às versões do código para não perdermos contexto das mudanças

• Às vezes queremos saber exatamente o que foi mudado de uma versão a outra do programa

• Ajuda a evitar conflitos em código desenvolvido no acesso simultâneo entre uma equipe de desenvolvedores

(5)

Universidade Estadual de Campinas – UNICAMP 5 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Visão geral

CVS não faz:

• Substituição de um gerenciamento de projeto • Substituição da comunicação entre os desenvolvedores • Controle sobre as mudanças

• Construção de sistemas

CVS não faz:

• Substituição de um gerenciamento de projeto

(O líder de projeto deve conversar freqüentemente com os desenvolvedores certificando que todos estão cientes do planejamento).

• Substituição da comunicação entre os desenvolvedores

(Os desenvolvedores precisam se comunicar sobre as alterações nos códigos para evitar conflitos que possam atrasar o desenvolvimento do projeto).

• Controle sobre as mudanças.

(O correto é gerar um banco de dados de bugs relatados e o estado em que cada um se encontra).

• Construção de sistemas.

(A estrutura do diretório e arquivo é feita pelo desenvolvedor, o CVS só armazenamento).

(6)

Universidade Estadual de Campinas – UNICAMP 6 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Vantagens

Vantagens de se utilizar o CVS:

• Armazenar as diferenças entre versões em um único arquivo • Auxiliar grupos de desenvolvedores no mesmo projeto • Restaurar facilmente as versões antigas

• Ajudar a manter a história do desenvolvimento

Vantagens

O CVS armazena apenas as diferenças entre versões em um único arquivo, de uma forma inteligente.

Outra vantagem do CVS é auxiliar grupos de desenvolvedores trabalhando em um mesmo projeto, sendo que cada um trabalhe no seu próprio diretório e o sistema CVS se encarregue de unir todos quando o trabalho estiver pronto.

O CVS ajuda a manter a história do desenvolvimento, através de uma LOG de mudanças, seus autores, datas e diferenças entre as versões.

(7)

Universidade Estadual de Campinas – UNICAMP 7 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Arquitetura do CVS

Arquitetura do CVS

O desenho mostra que os desenvolvedores podem trabalhar simultaneamente com o repositório, trazendo uma cópia do módulo para o diretório de trabalho, fazer as alterações devidas e mandar atualizar o repositório. O repositório por sua vez faz um gerenciamento através de seus arquivos de controle.

(8)

Universidade Estadual de Campinas – UNICAMP 8 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

O repositório

O repositório armazena cópias completas de todos os arquivos e diretórios que estão sob seu controle.

Os arquivos no repositório não são acessados diretamente:

• Comandos do CVS são utilizados para acessar o repositório e gerar cópias em um diretório de trabalho

• Usar os comandos do CVS para enviar as mudanças do diretório de trabalho para o repositório

O repositório pode estar na máquina local ou em uma máquina remota.

O repositório

O repositório armazena cópias completas de todos os arquivos e diretórios que estão sob seu controle.

Os arquivos no repositório não são acessados diretamente:

 Comandos do CVS são utilizados para acessar o repositório e gerar cópias em um diretório de trabalho

 Usar os comandos do CVS para enviar as mudanças do diretório de trabalho para o repositório

(9)

Universidade Estadual de Campinas – UNICAMP 9 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

O repositório

O repositório é dividido em duas partes:

• CVSROOT – contém arquivos administrativos dos CVS • Outros Diretórios – contém módulos definidos pelos desenvolvedores /usr local repcvs CVSROOT tc CVS outro-programa Diretório contendo arquivos administrativos Arquivos do código fonte do módulo curso

O repositório é dividido em duas partes:

 CVSROOT – contém arquivos administrativos dos CVS.

(10)

Universidade Estadual de Campinas – UNICAMP 10 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

O repositório

Cada arquivo sob controle do CVS tem um “history files” (nomes terminados com “,v”)

São arquivos chamados de “RCS files” Por exemplo: $CVSROOT tc Makefile,v driver.c,v parser.c,v Variável de ambiente CVSROOT=/usr/local/repcvs

Cada arquivo sob controle do CVS tem um “history file”, são nomes terminados com “,v”. São arquivos chamados de “RCS files”.

(11)

Universidade Estadual de Campinas – UNICAMP 11 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Revisões

Cada revisão de um arquivo tem um número de revisão único. Um número de revisão tem a forma “1.1”, “1.2”, ”1.3.2.2” ou “1.3.2.2.4.5” .

Por padrão a primeira revisão é sempre “1.1”.

Um número de revisão sempre tem um par de números decimais separados por ponto.

Por exemplo:

1.1 1.2 1.3 1.4 1.5

Revisões

Cada revisão de um arquivo tem um número de revisão único.

Esse número de revisão tem a seguinte forma “1.1”, “1.2”, “1.3.2” ou “1.3.2.2.4.5”.

Os números de revisão estão sempre tem um par de números decimais separados por ponto e por padrão a primeira revisão é sempre “1.1”.

(12)

Universidade Estadual de Campinas – UNICAMP 12 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Tags

Tag é um nome simbólico para apelidar um conjunto de projetos ou um release do software.

Por exemplo:

• Um tag deve sempre começar com uma letra • Pode conter dígitos “-” ou “_”

1.9 rel-1_9

Tag Release do software

Tags

Tag é um nome simbólico para apelidar um conjunto de projetos ou um release de software.

Para se criar um nome de tag deve ser criado uma conversão, evitando possíveis conflitos na programação.

Nomes de tag devem começar com uma letra maiúscula ou minúscula, podendo conter letras e dígitos especial como “-“ ou “_”

(13)

Universidade Estadual de Campinas – UNICAMP 13 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Branching and merging

Branch é quando o CVS isola as alterações em uma linha separada de desenvolvimento.

Merging é quando o CVS move as alterações feitas de um branch para o tronco principal. Por exemplo: 1.1 1.2 1.3 1.4 1.5 1.3.1.1 1.3.1.2 1.3.2.2 Tronco principal Branch Merging

Branching and merging

O CVS permite isolar as alterações e linhas separadas de desenvolvimento. Quando ocorre essa mudança em um ramo (branch) não é visualizado no tronco principal ou em outras ramificações (branches).

Também podemos mover mudanças de um ramo (branch) para outro ou para o tronco principal através do agrupamento (merging).

(14)

Universidade Estadual de Campinas – UNICAMP 14 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Branching and merging

Exemplo programa java “desenvolvimento”

A figura ilustra o funcionamento de um esquema de versionamento de um determinado arquivo chamado “arquivo.java”.A cada efetivação (commit) uma nova revisão é gerada. Podemos abrir uma determinada correção numa certa revisão (branch) enquanto o desenvolvimento desta classe continua.

Na revisão “1.3” apelidamos através da tag “BUILD_0_0” uma revisão para testes.

Supondo que a versão que vai para a produção seja a “1.9”, apelidamos através da tag “ACAD_1_0” que esta é a versão de produção.

(15)

Universidade Estadual de Campinas – UNICAMP 15 Programa de TIC – Curso CVS – Concurrent Version System

Módulo 2 – Administração do CVS

Programa de TIC - Unicamp CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Módulo 2

(16)

Universidade Estadual de Campinas – UNICAMP 16 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Obtendo e instalando

O código fonte do CVS pode ser encontrado em: http://ximbiot.com/

Recomenda-se baixar a última versão estável (stable) dos fontes. Procedimento de compilação e instalação do CVS:

# tar -xzvf cvs-1.11.21.tar.gz # cd cvs-1.11.21 # ./configure # make # make install Obtendo e Instalando o CVS

O mesmo pacote CVS contém o código do servidor e cliente, portanto, não há um procedimento diferente de instalação para cada um destes componentes. É recomendado que se instale a última versão estável (stable).

O código fonte do CVS pode ser encontrado emhttp://ximbiot.com/cvs/cvshome/ Será utilizada a versão cvs-1.11.21

Procedimento de compilação e instalação do CVS: # tar xvfz cvs-1.11.21.tar.gz

# cd cvs-1.11.21 # ./configure # make # make install

O CVS também pode ser instalado via pacote com o comando: # apt-get install cvs

Por padrão, o arquivo executável do CVS fica no diretório “/usr/local/bin/cvs”. Para verificar se a instalação ocorreu com sucesso utilize o comando:

(17)

Universidade Estadual de Campinas – UNICAMP 17 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Criando um repositório

Para criar um repositório, executar o comando cvs init. Por exemplo:

$ cvs –d /usr/local/repcvs init

O comando cria um repositório vazio, com arquivos administrativos para o CVS dentro do subdiretório “CVSROOT”.

O comando nunca sobre-escreve um repositório já existente.

diretório caminho

Criando um repositório

Para criar um repositório, devemos rodar o comando “cvs init”. Por exemplo:

$ cvs –d /usr/local/repcvs init

Esse comando cria um repositório vazio, gerando um subdiretório CVSROOT com arquivos de controle utilizados pelo CVS.

O comando nunca sobre-escreve qualquer arquivo existente no repositório, evitando que danifique um repositório já ajustado.

(18)

Universidade Estadual de Campinas – UNICAMP 18 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Configurando o servidor

Criando a variável de ambiente $CVSROOT.

Para usuários que utilizam shells csh e tcsh incluir a seguinte linha no arquivo “.cshrc” ou “.tcshrc”

setenv CVSROOT /usr/local/repcvs

Já os usuários do shell sh e bash incluir as seguintes linhas no arquivo “.profile” ou “.bashrc”

CVSROOT=/usr/local/repcvs export CVSROOT

Configurando o servidor

Criando a variável de ambiente $CVSROOT.

Para usuários que utilizam shells csh e tcsh incluir a seguinte linha no arquivo “.cshrc” ou “.tcshrc”.

setenv CVSROOT /usr/local/repcvs

Já os usuários do shell sh e bash incluir as seguintes linhas no arquivo “.profile” ou “.bashrc”.

CVSROOT=/usr/local/repcvs export CVSROOT

(19)

Universidade Estadual de Campinas – UNICAMP 19 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Configurando o servidor

Adicionando o grupo “cvs” no sistema operacional, com o comando:

# groupadd cvs

Alterando o grupo e a permissão do repositório, com o comando:

# cd /usr/local/repcvs # chgrp –R cvs .

# chmod ug+rwx . CVSROOT

É recomendado definir um grupo para acessar o CVS, para controlar permissões de acesso ao repositório.

Adicione o grupo “cvs” no sistema operacional, com o comando: # groupadd cvs

Alterando o grupo e a permissão do repositório, com o comando: # cd /usr/local/repcvs

# chgrp –R cvs .

(20)

Universidade Estadual de Campinas – UNICAMP 20 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Configurando o servidor

Configurando o servidor para autenticação de senha. Acrescentar o serviço pserver:

• Por padrão é utilizado a porta 2401 Por exemplo:

• No arquivo “/etc/services”

cvspserver 2401/tcp

• No arquivo “/etc/initd.conf”

cvspserver stream tcp nowait root /usr/local/bin/cvs cvs -f --allow-root=/usr/local/repcvs pserver

Configurando o servidor para autenticação de senha deve acrescentar o serviço pserver no inetd ou xinitd, depende do sistema operacional.

Acrescentar a seguinte linha no arquivo “/etc/inetd.conf”: cvspserver stream tcp nowait root /usr/local/bin/cvs

cvs -f --allow-root=/usr/local/repcvs pserver

A opção “—alow-root” especifica o diretório CVSROOT. Se um cliente se conectar em um diretório diferente será impedido.

Se o xinetd exigir um nome de serviço simbólico, acrescentar a seguinte linha no arquivo “/etc/services”:

(21)

Universidade Estadual de Campinas – UNICAMP 21 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Configurando o servidor • No arquivo “/etc/xinetd.d/cvspserver service cvspserver { port = 2401 socket_type = stream protocol = tcp wait = no user = root passenv = PATH server = /usr/local/bin/cvs

server args = -f --allow-root=/usr/local/repcvs pserver }

Reiniciar o serviço através do comando:

# /etc/init.d/xinetd reload

Dentro do diretório “/etc/xinetd.d” criar um arquivo para o serviço com o nome “cvspserver”, contendo os seguintes valores:

service cvspserver { port = 2401 socket_type = stream protocol = tcp wait = no user = root passenv = PATH server = /usr/local/bin/cvs

server_args = -f --allow-root=/usr/local/repcvs pserver }

Nota: Se “cvspserver” estiver definido no “/etc/services”, a linha “port =” poderá ser omitida.

Reiniciar o serviço através do comando: # /etc/init.d/xinetd reload

(22)

Universidade Estadual de Campinas – UNICAMP 22 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Criando grupo e usuário

Definir um grupo e um usuário dedicado para acesso ao repositório CVS.

Por exemplo:

# groupadd curso

# useradd –c “Usuário para acesso ao CVS” –d /home/joao –g curso –G cvs,curso –s /bin/false joao

# passwd joao

Criando grupo e usuário

Recomenda-se definir um grupo e um usuário dedicado para acesso ao repositório CVS. Este grupo deve ser criado no servidor que hospedará o repositório de dados.

Por exemplo: # groupadd curso

# useradd –c “Usr. para o CVS” –d /home/joao –g curso –G cvs,curso –s /bin/false joao # passwd joao

(23)

Universidade Estadual de Campinas – UNICAMP 23 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Arquivo de senhas

O arquivo de senhas para acessar o CVS deve ser criado dentro do subdiretório “CVSROOT”.

Por exemplo:

• No arquivo “/usr/local/repcvs/CVSROOT/passwd”

<cvsuser>:<crypt-passwd>:<sysuser>

usuário no sistema operacional senha criptografada

usuário para utilizar o login

Arquivo de senhas

Criar as contas e senhas no repositório do novo projeto dentro do arquivo “$CVSROOT/CVSROOT/passwd”, cujas linhas são formadas por:

<cvsuser>:<crypt-passwd>:<sysuser>

cvsuser é nome do usuário que fará o login no repositório

crypt-passwd é a senha criptografada do próprio sistemas operacional sysuser é o nome do usuário no sistema operacional

Para o acesso anônimo crie a seguinte linha: Anonymous::cvsanon

(24)

Universidade Estadual de Campinas – UNICAMP 24 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Acesso somente-leitura (read-only)

Para forçar acesso read-only para alguns usuários, deve ser criado dentro do subdiretório “CVSROOT”.

Por exemplo:

• No arquivo “/usr/local/repcvs/CVSROOT/readers” • O formato do arquivo é um nome de usuário por linha. • Geralmente, o usuário “anonymous” é colocado nesse arquivo.

Acesso somente-leitura (read-only)

É possível dar permissões de somente-leitura ao repositório utilizando o servidor de autenticação de senhas.

Um usuário com permissão de leitura pode apenas executar comandos do CVS que não modifique os arquivos do repositório, exceto arquivos como histórico, por exemplo.

Existem duas maneiras de especificar esse acesso, por inclusão e exclusão. Inclusão:

 O método de inclusão significa criar os nomes dos usuários que terão acesso de leitura no arquivo “$CVSROOT/CVSROOT/readers”, separado somente por uma nova linha no final de cada nome. Geralmente, o usuário “anonymous” é colocado nesse arquivo.

Exclusão:

 O método de exclusão significa listar todos os usuários que tem acesso de escrita e todos que tem acesso de leitura no arquivo o “$CVSROOT/CVSROOT/writers”, utilizando a mesma formatação do arquivo readers.

Nota: Se um mesmo nome de usuário estiver listado nos dois arquivos haverá um conflito fazendo com que o CVS utilize a opção mais segura ao repositório que é de dar acesso somente-leitura ao usuário.

(25)

Universidade Estadual de Campinas – UNICAMP 25 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Exercício

Objetivo:

• Instalar o CVS em seu computador

• Criar grupo e usuário dedicado para o acesso ao repositório • Criar o repositório

• Configurar o servidor

Exercicio 1

Objetivo:

 Instalar o CVS em seu computador

 Criar grupo e usuário dedicado para o acesso ao repositório

 Criar o repositório

(26)

Universidade Estadual de Campinas – UNICAMP 26 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Módulo 3

(27)

Universidade Estadual de Campinas – UNICAMP 27 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

O comando CVS

O formato geral do comando CVS é:

cvs [cvs-opções] subcomando [sub-opções] [args] • “cvs-opções” são opções gerais do comando • “sub-opções” são opções do subcomando Por exemplo:

$ cvs –q commit –m “mensgem”

Opção do cvs Opção do commit

O comando CVS

O formato geral do comando CVS é:

cvs [cvs-opções] subcomando [sub-opções] [args]

 “cvs-opções” são opções gerais do comando

 “sub-opções” são opções do subcomando

 “subcomando” pode ser: checkout, commit, update... Por exemplo:

$ cvs –q commit –m “mensgem”

(28)

Universidade Estadual de Campinas – UNICAMP 28 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Login

Logando no servidor usando o cliente com autenticação de senhas. Por exemplo:

$ cvs – d :pserver:[email protected]:/usr/local/repcvs login CVS password: *********

• “pserver” é o protocolo

• “joao” é o usuário criado no arquivo passwd • “lab.ccuec.unicamp.br” é o host do repositório • “/usr/local/repcvs” é o caminho do repositório

Login

Logando no servidor usando o cliente com autenticação de senhas. Por exemplo:

$ cvs – d :pserver:[email protected]:/usr/local/repcvs login CVS password: *********

 “pserver” é o protocolo

 “joao” é o usuário criado no arquivo passwd

 “lab.ccuec.unicamp.br” é o host do repositório

(29)

Universidade Estadual de Campinas – UNICAMP 29 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Import

Importando os arquivos fontes para o repositório com o comando “cvs import”.

Por exemplo:

$ cd /sistemas/projeto

$ cvs import –m “Estrutura de diretório criada” projeto joao start

• “projeto” é o nome do módulo • “joao” é o vendor (autor)

• “-m” é a mensagem de log do comando • “start” é a tag release

Import

Importando os arquivos fontes para o repositório com o comando “cvs import”. Por exemplo:

$ cd /sistemas/projeto

$ cvs import –m “Estrutura de diretório criada” projeto joao start

 “projeto” é o nome do módulo

 “joao” é o vendor (autor)

 “-m” é a mensagem de log do comando

(30)

Universidade Estadual de Campinas – UNICAMP 30 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Checkout

Extraindo os fontes do repositório para um diretório de trabalho com o comando “cvs checkout”.

Por exemplo:

$ cd /work

$ cvs checkout projeto

• “projeto” é o nome do módulo

Checkout

Extraindo os fontes do repositório para um diretório de trabalho com o comando “cvs checkout”.

Por exemplo: $ cd /work

$ cvs checkout projeto

(31)

Universidade Estadual de Campinas – UNICAMP 31 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Update

Atualizando os arquivos no diretório de trabalho com o conteúdo mais recente do repositório, utilizando o comando “cvs update”.

Por exemplo:

$ cvs update projeto

• “projeto” é o nome do módulo.

Update

Atualizando os arquivos no diretório de trabalho com o conteúdo mais recente do repositório, utilizando o comando “cvs update”.

Por exemplo:

$ cvs update projeto

(32)

Universidade Estadual de Campinas – UNICAMP 32 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Commit

Enviando os arquivos modificados no diretório de trabalho para o repositório com o comando “cvs commit”.

Por exemplo:

$ cvs commit –m “Alterado a conexão do banco” admin.php

• “admin.php” é o arquivo alterado • “-m” é a mensagem de log do comando

Commit

Enviando os arquivos modificados no diretório de trabalho para o repositório com o comando “cvs commit”.

Por exemplo:

$ cvs commit –m “Alterado a conexão do banco” admin.php Checking in admin.php;

/usr/local/repcvs/projeto/admin.php,v <-- admin.php new revision: 1.2; previous revision: 1.1

done

 “admin.php” é o arquivo alterado  “-m” é a mensagem de log do comando

(33)

Universidade Estadual de Campinas – UNICAMP 33 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Diff

Verificando as diferenças com o comando “cvs diff”. Por exemplo:

$ cvs diff admin.php

Diff

Verificando as diferenças entre a versão do repositório e o que está no diretório de trabalho, com o comando “cvs diff”.

Por exemplo: $ cvs diff admin.php

 depois de verificar as diferenças execute um commit do arquivo alterado para gerar um histórico no repositório

(34)

Universidade Estadual de Campinas – UNICAMP 34 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Release

Limpando o diretório de trabalho com o comando “cvs release”. Por exemplo:

$ cvs release –d projetos

• “-d” remove os arquivos do diretório de trabalho

Release

Limpando o diretório de trabalho com o comando “cvs release”. Por exemplo:

$ cvs release –d projetos

You have [1] altered files in this repository

Are you sure you want to release (and delete) directory ‘projetos’: y

 “-d” remove os arquivos do diretório de trabalho

 Antes de executar esse comando verifique se todas as modificações foram enviadas para o repositório

(35)

Universidade Estadual de Campinas – UNICAMP 35 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Add

Adicionando arquivos ao módulo no repositório com o comando “cvs add”.

Por exemplo:

$ cvs add locale.php

• opção “-m” pode ser utilizada para descrever o novo arquivo Depois execute o comando

$ cvs commit locale.php

Add

Adicionando arquivos ao módulo no repositório com o comando “cvs add”. Por exemplo:

$ cvs add locale.php

 opção “-m” pode ser utilizada para descrever o novo arquivo Depois execute o comando

(36)

Universidade Estadual de Campinas – UNICAMP 36 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Remove

Removendo arquivos do módulo do repositório com o comando “cvs remove”.

Por exemplo:

$ cvs remove locale.php

• opção “-m” pode ser utilizada para descrever a remoção Depois execute o comando

$ cvs commit locale.php

Remove

Removendo arquivos do módulo do repositório com o comando “cvs remove”. Por exemplo:

$ cvs remove locale.php

 opção “-m” pode ser utilizada para descrever a remoção Depois execute o comando

(37)

Universidade Estadual de Campinas – UNICAMP 37 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Status

Mostrando o estado que se encontra os arquivos com o comando “cvs status”.

Por exemplo:

$ cvs status adimin.php

Status

Mostrando o estado que se encontra os arquivos com o comando “cvs status”. Por exemplo:

$ cvs status admin.php

================================================ File: admin.php Status: Up-to-date

Working revision: 1.2 Tue Mar 23 18:30:00 2006

Repository revision: 1.2 /usr/local/repcvs/projeto/admin.php,v Sticky Tag: (none)

Sticky Date: (none) Sticky Options: (none)

(38)

Universidade Estadual de Campinas – UNICAMP 38 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Exercício

Objetivo:

• Importar o projeto para o repositório • Trazer os fontes para o diretório de trabalho • Fazer mudanças no arquivo

• Efetivar essas mudanças no repositório • Verificar as diferenças

Exercicio 2

Objetivo:

 Importar o projeto para o repositório

 Trazer os fontes para o diretório de trabalho

 Fazer mudanças no arquivo

 Efetivar essas mudanças no repositório

(39)

Universidade Estadual de Campinas – UNICAMP 39 Programa de TIC – Curso CVS – Concurrent Version System

Módulo 4 – Dicas

Programa de TIC - Unicamp CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Módulo 4

(40)

Universidade Estadual de Campinas – UNICAMP 40 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp

Interface gráfica

Interface gráfica para o CVS Para Windows: • WinCVS (http://www.wincvs.org/) • TortoiseCVS (http://www.tortoisecvs.org/) Para Linux: • gCVS (http://www.gcvs.org/) • LinCVS (http://lincvs.org/) Interface gráfica

Utilizar uma ferramenta gráfica para acessar o repositório CVS, de forma simples e fácil de usar.

Para interface Windows: • WinCVS site: (http://www.wincvs.org/) • TortoiseCVS site: (http://www.tortoisecvs.org/) Para Linux: • gCVS site: (http://www.gcvs.org/) • LinCVS site: (http://lincvs.org/)

(41)

Universidade Estadual de Campinas – UNICAMP 41 Programa de TIC – Curso CVS – Concurrent Version System

Programa de TIC - Unicamp CVS – Concurrent Version System

Referências • http://ximbiot.com/cvs/cvshome • http://www.loria.fr/~molli/cvs-index.html • http://en.wikipedia.org/wiki/Concurrent_Versions_System • http://www.ccuec.unicamp.br/ead Referências Portal CVS Home • http://ximbiot.com/cvs/cvshome The CVS Bubbles • http://www.loria.fr/~molli/cvs-index.html

Concurrent Versions System - From Wikipedia, the free encyclopedia • http://en.wikipedia.org/wiki/Concurrent_Versions_System

Portal do EAD/CCUEC

(42)

Universidade Estadual de Campinas – UNICAMP 42 Programa de TIC – Curso CVS – Concurrent Version System

Patrocinadores

Referências

Documentos relacionados

Sentido a necessidade de organizar melhor os louvores de grupo decidi trabalhar neste documento utilizando ferramentas gratuitas.. Por n˜ ao ser vers˜ ao final, n˜ ao deve ser

The chemical composition of elephant grass and dehydrated cashew bagasse used in silage are shown in Table 1.. The regression equations, determination coefficients, and

O processo de pseudo-individuação (Stanton et al., 1988) evidencia-se claramente no caso apresentado. Por um lado, Ricardo sofre pressões para individuar-se. Sua família e

Os módulos de silício cristalino estão sujeitos a apresentar um menor desempenho quando expostos a uma temperatura ambiente superior à 25 °C, entretanto, as tecnologias de filmes

Passerel les pour une societé non excluante,

A Floresta Ombrófila Densa Montana, preservada pelo Parque Nacional, apresentou quantidade média anual de serrapilheira semelhante à de outros fragmentos florestais de

Ninguém quer essa vida assim não Zambi.. Eu não quero as crianças

Conhecer, identificar e analisar as características e aplicações de estruturas amplificadoras que compõem sistemas eletrônicos; Projetar e implementar protótipos de