Usando o CVS

CVS é um programa para ajudar a gerenciar várias pessoas trabalhando simultaneamente no mesmo material. Cada usuário cria uma cópia local do repositório principal. As cópias locais podem estar na mesma máquina ou espalhadas pelo mundo. Usuários podem então modificar a cópia local como quiserem e, quando o material modificado estiver pronto, submeterem as mudanças de volta ao repositório principal.

Para um acesso somente leitura é possível usar a interface web. Há vários clientes gráficos para CVS tais como o cervisia do KDE. Este documento descreve o fluxo de trabalho com o programa de linha de comando cvs, outros clientes fornecem funcionalidades similares.

O CVS não permitirá que você submeta um arquivo se a cópia no repositório principal foi modificada desde a sua última atualização. Isto normalmente não é um problema porque você ainda pode atualizar a sua cópia local. Se as modificações foram em partes diferentes das que você trabalhava, as mudanças são silenciosamente combinadas. Se as mudanças afetam a mesma área em que esteve trabalhando, você será avisado que há um conflito e que precisa editar o arquivo para corrigir o problema antes de submetê-lo.

Nos exemplos a seguir, será usado o acesso anônimo (em inglês, anonymous). Se você tiver acesso a outra conta que lhe dá permissão de escrita ao repositório você deveria usar esta conta. Se você está planejando fazer mudanças, você deveria conseguir uma conta antes de começar, já que usuários anônimos não podem submeter alterações. Veja a seção sobre acesso de escrita para mais informações.

Pra começar a usar o CVS, você precisa efetuar login no servidor CVS.

   cvs -d :pserver:anonymous@cvs.debian.org:/cvs/webwml login

(apenas tecle enter quando pedir senha)

Para obter uma cópia local dos arquivos wml na sua máquina, você precisa usar

   cvs -d :pserver:anonymous@cvs.debian.org:/cvs/webwml checkout webwml

Você pode obter um sub-conjunto das páginas assim:

   cvs -d :pserver:anonymous@cvs.debian.org:/cvs/webwml checkout -l \
          webwml webwml/<idioma>
   cvs -d :pserver:anonymous@cvs.debian.org:/cvs/webwml checkout \
          webwml/Perl webwml/english/template webwml/<idioma>/Pics
   cvs -d :pserver:anonymous@cvs.debian.org:/cvs/webwml checkout \
          webwml/<idioma>/<caminho para os arquivos desejados>

Repita para todos os subdiretórios ou arquivos que queira. A segunda linha inclui todos os arquivos necessários se você deseja criar arquivos HTML dos WML. Cópias parciais como estas não são realmente suportadas, de modo que as instruções acima podem nem sempre funcionar.

Se você tem um login e senha, insira-os ao invés de anonymous, como a seguir:

   cvs -d :pserver:username@cvs.debian.org:/cvs/webwml checkout webwml/english/doc

Daí em diante você não precisará mais usar a parte '-d :pserver:...' . Todo santo dia você vai querer fazer um

   cvs update -d

para receber qualquer arquivo do repositório que tenha mudado. A opção -d do update vai adicionar quaisquer diretórios novos, automaticamente. Você pode querer criar um arquivo ~/.cvsrc pra que não tenha que digitar algumas opções todo tempo. Por exemplo, ele pode conter:

cvs -z9
update -d -P
diff -u

O que vem a seguir é para aqueles que tem permissão de escrita no repositório. Quando você terminou com uma página, pode submeter suas modificações ao repositório usando

   cvs commit <file>.wml

ou

   cvs commit <dir>    (para submeter mudanças no <dir>)

ou

   cvs commit          (para submeter todas as mudanças do diretório e seus sub-diretórios)

Se você é a primeira pessoa a traduzir uma página, você precisa fazer

   cvs add <file>.wml

Antes de submetê-la. Perceba que cvs add não é recursivo, então você precisa adicionar um diretório antes que possa adicionar seu conteúdo.

Para mais informações sobre o CVS, use info cvs.

Acesso de escrita ao CVS

Para instruções sobre como obter acesso de escrita ao CVS, veja http://people.debian.org/~joey/misc/webwml.html.