Manual de CVS: diferenças entre revisões
[edição não verificada] | [edição não verificada] |
Conteúdo apagado Conteúdo adicionado
Sem resumo de edição |
Índice |
||
Linha 1: | Linha 1: | ||
= Índice = |
|||
= Conceitos básicos = |
|||
* [[Manual_de_CVS: Conceitos básicos|Conceitos básicos]] |
|||
* Projeto: conjunto de fontes ou documentos, organizados de maneira hierárquica. |
|||
* [[Manual_de_CVS: Uso do CVS em Linux|Uso do CVS em Linux]] |
|||
* Repositório: conjunto lógico de projetos. |
|||
** [[Manual_de_CVS: Criando o repositório|Criando o repositório]] |
|||
** [[Manual_de_CVS: Exportando a variável de ambiente CVSROOT:|Exportando a variável de ambiente CVSROOT:]] |
|||
** [[Manual_de_CVS: Importando os fontes|Importando os fontes]] |
|||
** [[Manual_de_CVS: Pegando os arquivos|Pegando os arquivos]] |
|||
** [[Manual_de_CVS: Pondo arquivos no repositório|Pondo arquivos no repositório]] |
|||
*** [[Manual_de_CVS: Caso seja arquivo novo|Caso seja arquivo novo]] |
|||
** [[Manual_de_CVS: Removendo arquivos|Removendo arquivos]] |
|||
** [[Manual_de_CVS: Caso o projeto seja modificado|Caso o projeto seja modificado]] |
|||
** [[Manual_de_CVS: Checando alterações no projeto|Checando alterações no projeto]] |
|||
* [[Manual_de_CVS: Uso rápido do CVS em Windows|Uso rápido do CVS em Windows]] |
|||
** [[Manual_de_CVS: Baixe um software de CVS|Baixe um software de CVS]] |
|||
** [[Manual_de_CVS: Gerando a chave criptografada|Gerando a chave criptografada]] |
|||
** [[Manual_de_CVS: Criando um arquivo .bat|Criando um arquivo .bat]] |
|||
** [[Manual_de_CVS: Dentro do software de CVS|Dentro do software de CVS]] |
|||
** [[Manual_de_CVS: Usando os comandos do CVS|Usando os comandos do CVS]] |
|||
* [[Manual_de_CVS: Observações|Observações]] |
|||
[[Categoria: Informática]] |
|||
= Uso do CVS em Linux = |
|||
Primeiro é necessário saber que o CVS pode ser acessado pelo [[Console]] ou outro terminal das distribuições do Linux, enquanto no [[Windows]] é necessário um [[software]] a parte. |
|||
== Crie o repositório == |
|||
$ mkdir diretorio_do_projeto/ |
|||
$ cd diretorio |
|||
$ cvs init |
|||
== Exporte a variável de ambiente CVSROOT: == |
|||
$ export CVSROOT=diretorio_do_projeto/ |
|||
ou |
|||
$ export CVSROOT=<usuario>@<maquina>:diretorio_do_projeto/ |
|||
Ou usa a opção -d do comando "cvs": |
|||
$ cvs -d [<usuario>@<maquina>:]diretorio_do_projeto/ |
|||
== Importando os fontes == |
|||
Caso os fontes do projeto já existam (antes de se criar o repositório CVS), importe seus fontes: |
|||
Entre no diretório onde se encontra seu projeto e digite |
|||
$ cvs import -m "Breve Descrição" nome_do_projeto desenvolvedor |
|||
Caso não seja utilizada a opção -m para descrever o projeto, o CVS abrirá um editor de texto para que isso seja feito. |
|||
== Pegando os arquivos (co = checkout) == |
|||
$ cvs co diretorio_do_projeto |
|||
ou |
|||
$ cvs co nome_do_projeto |
|||
Isso criará o diretório com o nome do repositório localmente. |
|||
Se mais de um usuário forem trabalhar no mesmo projeto ao mesmo tempo, cada um deve rodar esse comando em um diretório distinto. |
|||
Se for um diretório num servidor remoto: |
|||
$ cvs -d usuario@maquina:diretorio_do_projeto co diretorio_do_projeto |
|||
== Pondo arquivos == |
|||
=== Caso seja arquivo novo === |
|||
$ cvs add arquivo_novo |
|||
$ cvs update |
|||
Muito importante, ainda mais se tratando que mais de uma pessoa está usando e alterando. |
|||
$ cvs commit |
|||
== Removendo arquivos == |
|||
$ cvs remove arquivo |
|||
$ rm arquivo |
|||
$ cvs commit |
|||
== Caso o projeto seja modificado == |
|||
$ cvs update |
|||
$ cvs commit |
|||
Para manter o repositório atualizado. |
|||
'''Nunca esquecer o cvs update e o cvs commit !!!''' |
|||
== Checando alterações no projeto == |
|||
Para acompanhar, durante o desenvolvimento, a versão do arquivo que está sofrendo alteração, o CVS dispõe de um diff . Assim, o comando: |
|||
$ cvs diff |
|||
verifica e mostra quais linhas de todos os arquivos do projeto sofreram alteração. |
|||
Para checar as alterações de um só arquivo: |
|||
$ cvs diff arquivo |
|||
= Uso rápido do CVS em Windows = |
|||
== Baixe um software de CVS == |
|||
Existem três ótimos softwares para CVS no Windows que são muito usados e todos comk licença [[GNU GPL|GPL]], são: [[WinCVS]] (http://www.wincvs.org), [[TortoiseCVS]] e o [[CygWin]]. |
|||
Para segurança do usuário/desenvolvedor sempre use conexão [[criptografia|criptografada]]. Por exemplo, com o software [[PuTTY]] (http://www.chiark.greenend.org.uk/~sgtatham/putty) é muito fácil de usar. |
|||
== Gerando a chave criptografada == |
|||
Rode o puttygen.exe, gere as chaves [[chave pública|pública]] e [[chave privada|privada]] e salve. |
|||
== Criando um arquivo .bat == |
|||
<pre> |
|||
@echo off |
|||
set CMD_LINE_ARGS= |
|||
:setArgs |
|||
if ""%1""=="""" goto doneSetArgs |
|||
set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1 |
|||
shift |
|||
goto setArgs |
|||
:doneSetArgs |
|||
plink.exe -ssh -pw sua-senha-aqui %CMD_LINE_ARGS% |
|||
</pre> |
|||
Este arquivo é necessário para que o plink.exe encontre a sua chave. (Geralmente é colocado dentro do C:/ junto com o plink.exe), senão é necessário editar sua localização no script acima. |
|||
== Dentro do software de CVS == |
|||
Agora você precisa editar nas ''preferrências'' a localização do '''arquivo .bat''', '''chave pública''' e da '''chave privada'''. |
|||
== Usando os comandos do CVS == |
|||
Em modo anônimo você só pode ler arquivos assim: |
|||
cvs -d:pserver:anonymous@cvs.NOME_DO_PROJETO.net:/LOCALIZACAO_DO_PROJETO checkout |
|||
Com acesso de escrita você pode checar os módulos com o comando acima, e alterar e reenviar ao repositório (commit) assim: |
|||
cvs -d:ssh:NOME_DO_USUARIO@cvs.NOME_DO_PROJETO.net:/LOCALIZACAO_DO_PROJETO -q commit -m "MENSAGEM_PARA_DOC" NOME_DO_MODULO_ALTERADO |
|||
= Observações = |
|||
O CVS realiza um controle muito eficiente de versões e é capaz, inclusive, de realizar alterações no mesmo arquivo, caso duas pessoas editem o mesmo arquivo ao mesmo tempo. |
|||
Se houver conflito, entretanto, o sistema deixará a decisão para ser tomada pelos humanos. |
|||
Será dado um aviso que o mesmo ponto do arquivo foi alterado, com um log do que foi feito por cada usuário, e alguém vai ter que usar o dicernimento e escolher qual das duas alterações deverá ser efetivada. |