diff options
author | Hugo Cisneiros <hugo@devin.com.br> | 2006-05-04 18:24:07 +0000 |
---|---|---|
committer | Hugo Cisneiros <hugo@devin.com.br> | 2006-05-04 18:24:07 +0000 |
commit | 3717112d5f803c597b4cb15ada3f8d2e257d4de2 (patch) | |
tree | dd648ab4727c061ee62ae3cd4876ccbac55e8ace /common | |
parent | b8d5258d2ccf3d08bfa1f69fa7acdf64ba1a2ed3 (diff) | |
download | fedora-doc-utils-3717112d5f803c597b4cb15ada3f8d2e257d4de2.tar.gz fedora-doc-utils-3717112d5f803c597b4cb15ada3f8d2e257d4de2.tar.xz fedora-doc-utils-3717112d5f803c597b4cb15ada3f8d2e257d4de2.zip |
Finished pt_BR translation
Diffstat (limited to 'common')
-rw-r--r-- | common/cvs-pt_BR.xml | 988 |
1 files changed, 988 insertions, 0 deletions
diff --git a/common/cvs-pt_BR.xml b/common/cvs-pt_BR.xml new file mode 100644 index 0000000..4c71b22 --- /dev/null +++ b/common/cvs-pt_BR.xml @@ -0,0 +1,988 @@ +<!-- $Id: --> + +<!-- +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook V4.2//EN" + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [ + + <!ENTITY BOILERPLATE "This header makes editing XML easier" > + <!ENTITY FC "Fedora Core" > + <!ENTITY RH "Red Hat" > + +]> +--> + +<chapter id="ch-cvs"> + <title>CVS</title> + <para> + O Concurrent Versions System (<application>CVS</application>) + fornece uma plataforma onde últiplos usuários podem editar os mesmos + arquivos. Imagine que se um grupo de usuários editam arquivos em um único + diretório, o caos pode reinar. Entretanto, usando o + <application>CVS</application>, um grupo de pessoas pode trabalhar de forma + segura no mesmo conjunto de arquivos. O <application>CVS</application> + mantém uma cópia mestre dos arquivos, e grava em um repositório central quem + modificou que arquivo e quando. Se conflitos surgem, o + <application>CVS</application> lhe diz. O <application>CVS</application> é + geralmente usado por programadores que compartilham códigos, mas também + funciona bem para documentação. + </para> + <indexterm> + <primary>cvs</primary> + </indexterm> + <section id="sn-cvs-overview"> + <title>Como o CVS Trabalha</title> + <indexterm> + <primary>cvs</primary> + <secondary>como ele trabalha</secondary> + </indexterm> + <indexterm> + <primary>cvs</primary> + <secondary>visão geral</secondary> + </indexterm> + <para> + Em muitos casos, cada conjunto de arquivos que formam um pacote ou projeto + é armazenado como um <firstterm>módulo</firstterm> no servidor CVS. + </para> + + <para> + Quando trabalhando com arquivos no <application>CVS</application>, você + pode extrair (<firstterm>checkout</firstterm>) uma cópia do módulo para o + seu sistema de arquivos local. Depois de modificar um ou mais arquivos, + você pode enviá-los (<firstterm>commit</firstterm>) de volta para o + repositório central do servidor <application>CVS</application>. + </para> + + <para> + Com o <application>CVS</application> você pode editar um arquivo sem + primeiro pegar permissão ou bloqueando o arquivo. A parte concorrente + (<wordasword>concurrent</wordasword>) do arquivo no + <application>CVS</application> tem a habilidade de permitir muitas pessoas + diferentes a editar diferentes partes do arquivo. Contanto que nenhuma das + mudanças gerem conflito entre si, o <application>CVS</application> pode + corretamente gravar as mudanças. Em caso de mudanças duplicadas, elas são + marcadas nos arquivos e os autores podem resolver o problema entre eles. + </para> + + <para> + Quando você aplica as mudanças, apenas mudanças em arquivos que o servidor + conhece são aplicadas. Em outras palavras, quando você cria um arquivo em + sua cópia local do módulo, o novo arquivo não é automaticamente atualizado + no servidor. Você precisa adicionar (<firstterm>add</firstterm>) o arquivo + ao repositório para depois aplicá-lo enviando (commit). Se você remover o + arquivo da sua cópia local do módulo, você precisa especificar que você + deseja removê-lo do diretório no servidor CVS e depois aplicar a remoção + do arquivo. + </para> + + <para> + Os comandos especificos para executar estas ações são descritos em + <xref linkend="sn-cvs-cvscommands"></xref>. + </para> + + <para> + Se alguém modificou o arquivo entre a última vez que você pegou o arquivo + do CVS e quando você tentou aplicar as mudanças, o + <application>CVS</application> tentará mesclar as mudanças na cópia mestre + do servidor <application>CVS</application>. Se o conteúdo que você + modificou está em uma localização diferente no arquivo do que as mudanças + que outra pessoa modificou, as chances são de que a ação de aplicar terá + sucesso sem nenhum <firstterm>conflict</firstterm>. Se alguém modificou o + mesmo conteúdo que você e tentar aplicar, você verá uma mensagem de que um + conflito no arquivo ocorreu. Por isso, você precisa atualizar + (<firstterm>update</firstterm>) seus arquivos freqüentemente. É uma boa + prática atualizá-los logo antes de começar a modificar um arquivo. Veja na + <xref linkend="sn-cvs-cvscommands-conflicts"></xref> para instruções em + como resolver conflitos. + </para> + </section> + <section id="sn-cvs-preparation"> + <title>Preparando-se Para Usar o CVS</title> + <indexterm> + <primary>cvs</primary> + <secondary>preparando-se para usar</secondary> + </indexterm> + <para> + Antes de usar o <application>CVS</application>, você precisa estabelecer + uma conta no servidor <application>CVS</application>. Depois de conseguir + uma conta, você não precisa fazer estes passos novamente. + </para> + + <section id="sn-cvs-rpm-check"> + <title>O CVS Está Instalado em Seu Sistema?</title> + <indexterm> + <primary>cvs</primary> + <secondary>instalação por RPM</secondary> + </indexterm> + <para> + Você deve ter o pacote <abbrev>RPM</abbrev> do + <application>CVS</application> instalado. Verifique a sua presença + digitando o comando: + </para> +<screen><prompt>$ </prompt><command>rpm -q cvs</command></screen> + <para> + Se você ver uma saída parecida com + <computeroutput>cvs-1.11.19-1</computeroutput>, então o pacote está + instalado. Uma mensagem parecida com <computeroutput>package cvs is not + installed</computeroutput> quer dizer que você precisa instalar o pacote + <application>cvs</application> antes de continuar. Se você não sabe como + fazer isso, consulte o seu administrador de sistemas que possa + instalá-lo para você. + </para> + </section> + + <section id="sn-cvs-generate-keys"> + <title>Gerando as Chaves SSH</title> + <indexterm> + <primary>OpenSSH</primary> + <secondary>chaves de autorização</secondary> + </indexterm> + <para> + O servidor <application>CVS</application> usa chaves do Protocolo 2 do + <application>SSH</application> para autenticar usuários. Por isso você + precisará gerar um par de chaves antes de conseguir uma conta no + <application>CVS</application>. Se você já tem uma chave + <abbrev>DSA</abbrev> do <application>SSH</application>, pode pular este + passo. + </para> + <tip> + <title>Dica</title> + <para> + Você já tem uma chave <abbrev>DSA</abbrev> caso você tenha o arquivo + <filename>~/.ssh/id_dsa.pub</filename> em seu sistema. + </para> + <para> + Se sua chave <abbrev>DSA</abbrev> existente não precisa de uma + frase-senha (<wordasword>passphrase</wordasword>), é altamente + recomendado que você gere outra que precisa de uma frase-senha. + </para> + </tip> + <para> + Use os seguintes passos para gerar uma chave <abbrev>DSA</abbrev> usada + pelo Protocolo 2 do <application>SSH</application>. Ela é necessária + para uma conta <application>CVS</application> no servidor + <computeroutput>cvs.fedora.redhat.com</computeroutput>. + </para> + <orderedlist> + <indexterm> + <primary>OpenSSH</primary> + <secondary><command>ssh-keygen</command> + </secondary> + </indexterm> + <indexterm> + <primary><command>ssh-keygen</command> + </primary> + </indexterm> + <listitem> + <para> + Para gerar uma chave <acronym>DSA</acronym> que trabalhe com a + versão 2.0 do protoclo, digite na linha de comando: + </para> +<screen><prompt>$ </prompt><command>ssh-keygen -t dsa</command></screen> + <para> + Aceite a localização de arquivo padrão no + <filename>~/.ssh/id_dsa</filename>. É altamente recomendado que você + defina e use uma frase-senha (<firstterm>passphrase</firstterm>) + para melhorar a segurança da sua chave. Entre com uma frase-senha + diferente da sua senha de conta e confirme digitando-a novamente. + </para> + </listitem> + <listitem> + <para> + Copie a sua nova chave para o arquivo correto digitando o seguinte + na linha de comando. + </para> +<screen><prompt>$ </prompt><command>cat ~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys</command></screen> + <note> + <para> + Verifique este comando com cuidado antes de pressionar a tecla + <guibutton>ENTER</guibutton>. Se o arquivo + <filename>~/.ssh/authorized_keys</filename> já existir, o conteúdo + do <filename>~/.ssh/id_dsa.pub</filename> irá ser adicionado ao + fim do arquivo <filename>~/.ssh/authorized_keys</filename>. + </para> + </note> + </listitem> + <listitem> + <para> + Mude as permissões do seu diretório <filename>~/.ssh</filename> e de + suas chaves com os comandos: + </para> +<screen><prompt>$ </prompt><command>chmod 755 ~/.ssh</command> +<prompt>$ </prompt><command>chmod 644 ~/.ssh/authorized_keys</command></screen> + </listitem> + </orderedlist> + <tip> + <title>Dica</title> + <para> + Você pode fazer com que o seu sistema lembre-se de sua frase-senha + para que você não tenha que digitar toda vez que acessar o servidor + <application>CVS</application>. Veja a documentação do programa + <application>ssh-add</application>. + </para> + </tip> + </section> + </section> + <section id="sn-cvs-config"> + <title>Configurando Para Um Acesso CVS</title> + <indexterm> + <primary>cvs</primary> + <secondary>configurando para acesso</secondary> + </indexterm> + <indexterm> + <primary>cvs</primary> + <secondary>CVSROOT</secondary> + </indexterm> + <indexterm> + <primary>cvs</primary> + <secondary>CVS_RSH</secondary> + </indexterm> + <indexterm> + <primary>CVSROOT</primary> + </indexterm> + <indexterm> + <primary>CVS_RSH</primary> + </indexterm> + <indexterm> + <primary>cvs</primary> + <secondary><filename>.cvsrc</filename> + </secondary> + </indexterm> + <indexterm> + <primary><filename>.cvsrc</filename> + </primary> + </indexterm> + <section id="sn-cvs-config-cvsrc"> + <title>Evitando Digitações Repetitivas</title> + <indexterm> + <primary>cvs</primary> + <secondary>evitando digitações repetitivas</secondary> + </indexterm> + <para> + Muitos comandos <application>CVS</application> precisam de certos + parâmetros de linha de comando para operar consistentemente. Ao invés de + digitá-los toda vez que o comando é usado, você pode salvar estes + parâmetros em um arquivo que o <application>CVS</application> irá ler + antes de executar a sua linha de comando. + </para> + + <para> + Crie um arquivo chamado <filename>~/.cvsrc</filename> no seu diretório + home. Ele deve conter os seguintes comandos, um por linha: +<screen><computeroutput>cvs -z3 +diff -uNp +rdiff -uNp +update -dP</computeroutput></screen> + </para> + </section> + + <section id="sn-cvs-config-anon"> + <title>Configurando para Acesso CVS Somente-Leitura</title> + <indexterm> + <primary>cvs</primary> + <secondary>configurando acesso somente-leitura</secondary> + </indexterm> + <indexterm> + <primary>cvs</primary> + <secondary>acesso anônimo</secondary> + </indexterm> + <para> + Se o seu objetivo é efetuar download das várias documentações do &FC; e + renderizar em seu sistema, você precisará apenas de acesso + somente-leitura no repositório <application>CVS</application>. Siga as + instruções desta seção e então pule diretamente para a <xref + linkend="sn-cvs-cvscommands-co"/>. + </para> + + <para> + Mude o diretório para onde você quer que seus arquivos do + <application>CVS</application> estejam localizados, e então execute os + seguintes comandos: + </para> +<screen><prompt>$ </prompt><command>export CVSROOT=:pserver:cvs.fedora.redhat.com:/cvs/docs</command> +<prompt>$ </prompt><command>cvs login</command> +<prompt>$ </prompt><command>cvs checkout docs-common</command> <replaceable>module-name</replaceable> +<prompt>$ </prompt><command>cvs checkout</command> <replaceable>module-name</replaceable> +<prompt>$ </prompt><command>cd</command> <replaceable>module-name</replaceable></screen> + <para> + Uma vez que você tenha obtido o módulo, não importa o que estiver em sua + variável <envar>CVSROOT</envar> porque o dado é armazenado no arquivo + <filename>CVS/Root</filename> em cada diretório do seu repositório + local. Enquanto o seu diretório de trabalho atual tiver um diretório + <filename>CVS/</filename>, o programa <application>CVS</application> irá + localizar automaticamente o repositório &FC;. + </para> + </section> + + <section id="sn-cvs-config-author"> + <title>Configurando Acesso CVS Leitura/Escrita</title> + <indexterm> + <primary>cvs</primary> + <secondary>configurando acesso leitura/escrita</secondary> + </indexterm> + <indexterm> + <primary>cvs</primary> + <secondary>configurando acesso para autores</secondary> + </indexterm> + <para> + Para criar um novo documento ou modificar um já existente, você precisa + obter acesso leitura/escrita completo ao repositório CVS de + Documentação &FC;. Para detalhes completos sobre este processo, veja no + site <ulink + url="http://fedoraproject.org/wiki/DocsProject/NewWriters"><filename>http://fedoraproject.org/wiki/DocsProject/NewWriters</filename>. + Abaixo está um pequeno resumo: + </para> + + <itemizedlist> + <listitem> + <para> + Inscreva-se na <ulink + url="https://listman.redhat.com/mailman/listinfo/fedora-docs-list"><filename>fedora-docs-list</filename> + </ulink>, que é a lista principal do projeto. + </para> + </listitem> + <listitem> + <para> + Gere uma chave GNU Privacy Guard (<abbrev>GPG</abbrev>) para você se + identificar no projeto. + </para> + </listitem> + <listitem> + <para> + Registre uma conta no <ulink + url="http://bugzilla.redhat.com/"><filename>Bugzilla</filename> + </ulink>, se você já não tem uma. O <filename>Bugzilla</filename> é + o método que usamos para acompanhar bugs, mudanças e projetos. + </para> + </listitem> + <listitem> + <para> + Envie uma <ulink + url="http://fedoraproject.org/wiki/DocsProject_2fSelfIntroduction">apresentação + de si</ulink> na lista. + </para> + </listitem> + </itemizedlist> + + <para> + Depois que sua <ulink + url="http://fedoraproject.org/wiki/DocsProject_2fSelfIntroduction">apresentação + de si</ulink> for aprovada, seu acesso <application>CVS</application> + será garantido. + </para> + + <para> + Todo autor, e isso inclui você depois da sua apresentação, recebe uma + variável <envar>$CVSROOT</envar> única para acessar o repositório + <application>CVS</application>: + </para> +<screen><prompt>$ </prompt><command>export CVSROOT=:ext:</command><replaceable>seunome</replaceable><command>@cvs.fedora.redhat.com:/cvs/docs</command> +<prompt>$ </prompt><command>export CVS_RSH=/usr/bin/ssh</command></screen> + <para> + Com as variáveis de ambiente + <envar>$CVSROOT</envar> + e + <envar>$CVS_RSH</envar> + funcionando, você pode acessar o repositório: + </para> +<screen><prompt>$ </prompt><command>cvs co -c</command></screen> + <para> + Você terá que digitar sua frase-senha para a sua chave + <application>SSH</application>. Pressione + <guibutton>ENTER</guibutton> + e você deverá receber uma lista de módulos que já estão no repositório. + </para> + </section> + </section> + <section id="sn-cvs-cvscommands"> + <title>Comandos Básicos de CVS</title> + <indexterm> + <primary>cvs</primary> + <secondary>comandos</secondary> + </indexterm> + <para> + Depois de configurar seu sistema para trabalhar com CVS, extraia os + módulos que você irá trabalhar. + </para> + <tip> + <title>Dica</title> + <para> + Para ver se você precisa de uma variável + <envar>$CVSROOT</envar> + configurada corretamente, ou um parâmetro + <option>-m </option> + <replaceable>repositório</replaceable>, veja se você tem um subdiretório + chamado <filename>CVS/</filename> no diretório atual. + </para> + <para> + Se você tem um diretório <filename>CVS/</filename>, o + <application>CVS</application> ignora totalmente a variável + <envar>$CVSROOT</envar> ou o parâmetro <option>-m</option>. + </para> + </tip> + <section id="sn-cvs-cvscommands-co"> + <title>Extraindo Módulos</title> + <indexterm> + <primary>cvs</primary> + <secondary>extraindo módulos</secondary> + </indexterm> + <para> + Você só precisar extrair um módulo uma vez. Depois que uma cópia local + do módulo estiver em seu sistema, ela estará em seu sistema. + </para> + + <para> + Para extrair um módulo, use o seguinte comando: + </para> +<screen><prompt>$ </prompt><command>cvs co</command> <replaceable><nome-do-modulo></replaceable></screen> + <para> + + Por exemplo, para extrair o módulo + <computeroutput>example-tutorial</computeroutput>, mude o seu atual + diretório, e execute o seguinte comando: + </para> +<screen><prompt>$ </prompt><command>cvs co example-tutorial</command></screen> + <para> + Um diretório chamado <filename>example-tutorial/</filename> é criado + dentro do diretório atual. + </para> + + <para> + Se um nome de árvore não é especificado ao extrair um módulo, ele é + referenciado com a árvore <firstterm>HEAD</firstterm> do módulo + <application>CVS</application>. + </para> + + <section id="sn-cvs-cvscommands-co-branch"> + <title>Extraindo Árvores de Módulos</title> + <indexterm> + <primary>cvs</primary> + <secondary>extrair módulos</secondary> + <tertiary>extraindo árvores</tertiary> + </indexterm> + <para> + Pense na árvore <application>CVS</application> como uma versão dos + arquivos para uma versão particular de um manual ou pacote. + </para> + + <para> + Para extrair uma árvore de um módulo, use o seguinte comando: + </para> +<screen><prompt>$ </prompt><command>cvs co</command> <option>-d</option> <replaceable><diretório></replaceable> <option>-r</option> <replaceable><nome-da-árvore></replaceable> <replaceable><nome-do-módulo></replaceable></screen> + <para> + Um diretório chamado <replaceable><diretório></replaceable> é + criado, e os arquivos da árvore + <replaceable><nome-da-árvore></replaceable> do módulo + <replaceable><nome-do-módulo></replaceable> são copiados para + este diretório. + </para> + + <para> + Por exemplo, para extrair uma árvore chamada BRANCH-VERSION-1.2 + do módulo <computeroutput>mymodule</computeroutput>, use o comando: + </para> +<screen><prompt>$ </prompt><command>cvs co -d mymodule-1.2 -r BRANCH-VERSION-1.2 mymodule</command></screen> + <para> + A árvore BRANCH-VERSION-1.2 do módulo é extraída para o diretório + <filename>mymodule-1.2</filename> em seu sistema. + </para> + + <para> + Para determinar que árvores e tags existem para um arquivo, use o + comando: + </para> +<screen><prompt>$ </prompt><command>cvs status</command> <option>-v</option> <replaceable><nomedoarquivo></replaceable></screen> + <para> + Por exemplo, o status do arquivo <filename>foo.sgml</filename> é o + seguinte: + </para> +<screen> +<computeroutput> +=================================================================== +File: foo.sgml Status: Up-to-date + + Working revision: 1.47 + Repository revision: 1.47 /cvs/docs/custom-guide/rhl-cg-en_US.sgml,v + Sticky Tag: (none) + Sticky Date: (none) + Sticky Options: (none) + + Existing Tags: + BRANCH-VERSION-1.2 (branch: 1.25.2) +</computeroutput> +</screen> + <para> + Apenas as tags marcadas como árvores na segunda coluna da seção + <computeroutput>Existing Tags</computeroutput> (Tags Existentes) podem + ser extraídas como uma árvore. + </para> + </section> + </section> + + <section id="sn-cvs-cvscommands-up"> + <title>Atualizando Arquivos</title> + <indexterm> + <primary>cvs</primary> + <secondary>atualizando arquivos</secondary> + </indexterm> + <para> + Para obter as últimas versões dos arquivos de um módulo, mude para o + diretório que contém os arquivos para o módulo e execute o comando: + </para> +<screen><command>cvs update</command></screen> + <para> + Será efetuado o download das últimas versões de todos os arquivos no + módulo e colocado em sua cópia local. Se você notar algum conflito de + arquivo, veja a <xref linkend="sn-cvs-cvscommands-conflicts"></xref>. + </para> + </section> + + <section id="sn-cvs-cvscommands-commit"> + <title>Enviando Arquivos</title> + <indexterm> + <primary>cvs</primary> + <secondary>enviando arquivos</secondary> + </indexterm> + <para> + Depois de modificar os arquivos em sua versão local do módulo, envie-os + (commit) para salvar as mudanças no servidor + <application>CVS</application>: + </para> +<screen><prompt>$ </prompt><command>cvs commit</command> <option>-m</option> "<replaceable>mensagem de log</replaceable>" <replaceable>nomedoarquivo</replaceable></screen> + <note> + <para> + Se você prefere escrever as mensagens de log com seu editor de textos + preferidos, como definido nas variáveis de mabiente $VISUAL ou + $EDITOR, apenas omita o parâmetro <userinput>-m "mensagem + de log"</userinput>. O documento já terá comentários descrevendo + a mudança; você não precisa removê-los quando for escrever seu + próprio texto. + </para> + </note> + + <para> + A mensagem de log deve ser o quanto mais descritiva possível para que + você e qualquer outra pessoa trabalhando no módulo entenda o que foi + mudado. Usar uma mensagem de log como por exemplo <userinput>atualizado + alguns arquivos</userinput> não descreve necessariamente o que foi + mudado e não irá ajudá-lo no futuro. Se você está corrigindo um bug, use + a referência do <application>Bugzilla</application>. + </para> + + <para> + O <replaceable><nomedoarquivo></replaceable> pode ser um arquivo, + uma série de arquivos separados por espaço, ou um grupo de arquivos + especificados com wildcards (coringas) como por exemplo + <filename>*.png</filename> ou <filename>foo-*.sgml</filename>. + </para> + + <para> + Se nehum arquivo ou grupo de arquivos é especificado no comando + <command>commit</command>, todas as mudanças de todos os tipos serão + enviadas ao servidor. O comando é recursivo e incluirá também mudanças + em subdiretórios do módulo. Tenha cuidado quando usar o comando + <command>commit</command> sem especificar arquivos porque você pode não + lembrar exatamente que arquivos foram modificados. + </para> + + <para> + Se você notar algum conflito de arquivo, veja a <xref + linkend="sn-cvs-cvscommands-conflicts"></xref>. + </para> + </section> + + <section id="sn-cvs-cvscommands-add"> + <title>Adicionando Arquivos</title> + <indexterm> + <primary>cvs</primary> + <secondary>adicionando arquivos</secondary> + </indexterm> + <para> + Para adicionar um arquivo a um módulo, crie o arquivo em sua cópia local + e execute o seguinte comando: + </para> +<screen><prompt>$ </prompt><command>cvs add</command> <replaceable>arquivo-a-adicionar</replaceable></screen> + <para> + Depois de adicionar o arquivo, você precisará aplicar + (<command>commit</command>) o comando <command>add</command> para copiar + o arquivo para o servidor: + </para> +<screen><prompt>$ </prompt><command>cvs commit</command> <option>-m</option> "<replaceable>mensagem de log</replaceable>" <replaceable>arquivo-a-adicionar</replaceable></screen> + </section> + + <section id="sn-cvs-cvscommands-admin"> + <title>Lidando com Arquivos Binários</title> + <indexterm> + <primary>cvs</primary> + <secondary>arquivos binários</secondary> + </indexterm> + <para> + A maioria dos arquivos mais comuns são arquivos de texto simples, mas + algumas vezes arquivos binários também são arquivados. O programa + <application>cvs</application> reconhece as extensões de arquivos mais + comuns como por exemplo <filename>.png</filename> ou + <filename>.jpg</filename>, então o <application>cvs</application> + geralmente "faz a coisa certa". + </para> + + <para> + Quando uma cópia de arquivo é extraída do repositório, o + <application>cvs</application>procura palavras-chave especiais nele como + por exemplo "<computeroutput>$id:$</computeroutput>" e + substitui a linha por um valor gerado, como o número de versão do + arquivo. + </para> + + <para> + Esta substituição de palavras-chave geralmente corrompe arquivos + binários, então ela deve ser desligada se o + <application>cvs</application> não reconhece seu arquivo como binário. + Para marcar seu arquivo como binário, deixando a substituição de + palavras-chave desligada, use o comando: + </para> +<screen width="60"><prompt>$ </prompt><command>cvs</command> <option>admin</option> <option>-kk</option> <replaceable>arquivo</replaceable></screen> + <para> + Note que o arquivo deve estar contido no repositório + <abbrev>CVS</abbrev> antes do comando <option>admin</option> ser usado. + Isto é certo porque a substituição de palavra-chave é feia quando o + arquivo é extraído para o repositório local, e não quando o arquivo é + aplicado ao repositório. + </para> + <tip> + <title>Recuperando um arquivo binário</title> + <para> + Se você colocar um arquivo binário no repositório e perceber que ele + está corrompido quando extraído, não entre em pânico. Simplesmente use + o comando <option>admin</option> como descrito acima, remova sua cópia + local de arquivo, e extraia-o de novo. + </para> + </tip> + </section> + + <section id="sn-cvs-cvscommands-rm"> + <title>Removendo Arquivos</title> + <indexterm> + <primary>cvs</primary> + <secondary>removendo arquivos</secondary> + </indexterm> + <para> + Se um arquivo não é mais preciso em um módulo, use o comando + <command>remove</command> para removê-lo de sua cópia local e então + aplique <command>commit</command> a remoção no servidor. Meso que o + arquivo seja removido da versão atual do módulo, uma cópia arquivada + ainda é guardada no servidor para que possa ser recolocada a qualquer + momento com o comando <command>add</command>. + </para> +<screen><prompt>$ </prompt><command>cvs rm -f</command> <replaceable>arquivo-a-remover</replaceable></screen> + <para> + Depois de remover o arquivo, você precisa aplicar + (<command>commit</command>) a remoção: + </para> +<screen><prompt>$ </prompt><command>cvs commit</command> <option>-m</option>"<replaceable>mensagem de log</replaceable>" <replaceable>arquivo-a-remover</replaceable></screen> + <para> + Você pode usar wildcards (coringas) no comando <command>commit</command> + para identificar os arquivos removidos. Eles devem ser especificados + com um nome de arquivo exato. + </para> + + <para> + Se você precisa renomear um arquivo, é melhor você renomear o arquivo no + servidor <application>CVS</application> para que o histórico de versões + do arquivo seja preservado. Quando precisar renomear um arquivo, envie + um e-mail para + <ulink url="mailto:cvsdocs-administrator@fedora.redhat.com"><filename>cvsdocs-administrator@fedora.redhat.com</filename> + </ulink> pedindo para o arquivo ser renomeado. + </para> + </section> + + <section id="sn-cvs-cvscommands-status"> + <title>Estado dos Arquivos</title> + <indexterm> + <primary>cvs</primary> + <secondary>estado dos arquivos</secondary> + </indexterm> + <para> + As vezes é necessário visualizar o <firstterm>estado</firstterm> de um + arquivo em um módulo <application>CVS</application>. Para ver o estado + de um arquivo, use o comando: + </para> +<screen><prompt>$ </prompt><command>cvs status</command> <replaceable>arquivo</replaceable></screen> + <para> + O estado de um arquivo de repositório pode ser: + </para> + + <variablelist> + <varlistentry> + <term><computeroutput>Up-to-date</computeroutput> (Atualizado)</term> + <listitem> + <para> + Sua revisão do arquivo é idêntica a última versão do servidor + <application>CVS</application>. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>Locally Modified</computeroutput> (Localmente Modificada)</term> + <listitem> + <para> + Você atualizou a última revisão do servidor, mas você modificou o + arquivo em seu sistema. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>Locally Added</computeroutput> (Adicionado Localmente)</term> + <listitem> + <para> + Você adicionou o arquivo com o comando <command>cvs add</command> + mas não aplicou (commit) a adição do arquivo. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>Locally Removed</computeroutput> (Removido Localmente)</term> + <listitem> + <para> + Você removeu o arquivo com o comando <command>cvs remove</command> + mas ainda não aplicou (commit) a remoção. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>Needs Checkout</computeroutput> (Precisa de Extração)</term> + <listitem> + <para> + Uma novaversão do arquivo está no servidor e precisa ser obtida. + Apesar do estado incluir a palavra extrair, ele na verdade + significa que você precisa atualizar seus arquivos com o comando + <command>cvs update</command>. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>Needs Patch</computeroutput> (Precisa de Patch)</term> + <listitem> + <para> + A revisão do seu repositório local precisa de um patch para a + última revisão do servidor. Use o comando <command>cvs + update</command> para resolver. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>Needs Merge</computeroutput> (Precisa de Mesclagem)</term> + <listitem> + <para> + Uma nova revisão existe no servidor e sua versão local contém + modificações que ainda não foram aplicadas. Este estado geralmente + aparece quando você não tem a última revisão do arquivo e mesmo + assim o edita. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>File had conflicts on merge</computeroutput> (Há conflitos no Arquivo durante a Mesclagem)</term> + <listitem> + <para> + Parecido com o <computeroutput>Needs Merge</computeroutput>, + exceto pelo fato de que você tentou usar o comando <command>cvs + update</command>. A diferença não pôde ter sido resolvida + automaticamente. Veja a <xref + linkend="sn-cvs-cvscommands-conflicts"></xref> para mais + informações em como resolver conflitos. + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term><computeroutput>Unknown</computeroutput> (Desconhecido)</term> + <listitem> + <para> + O servidor <application>CVS</application> não sabe de nada sobre + este arquivo. Ele pode não ter sido adicionado ou removido + localmente e nunca pôde ter sido aplicado ao servidor. Este estado + geralmente ocorre para arquivos que você não deve aplicar (commit) + ao <application>CVS</application> como por exemplo um + <filename>generated-index.sgml</filenamee> ou arquivos que você + pode querer adicionar ao repositório mas não usou o comando + <command>cvs add</command>. + </para> + </listitem> + </varlistentry> + </variablelist> + </section> + + <section id="sn-cvs-cvscommands-conflicts"> + <title>Resolvendo Conflitos</title> + <indexterm> + <primary>cvs</primary> + <secondary>resolvendo conflitos</secondary> + </indexterm> + <para> + Se você modifica um arquivo em uma mesma região que foi modificada e + aplicada por outra pessoa primeiro, você provavelmente irá ver uma + mensagem parecido com a abaixo quando aplicar o arquivo ou atualizar a + sua cópia local do módulo: + </para> +<screen> +<computeroutput> +RCS file: /cvs/docs/module-name/filename.sgml,v +retrieving revision 1.12 +retrieving revision 1.13 +Merging differences between 1.12 and 1.13 into filename.sgml +rcsmerge: warning: conflicts during merge +cvs server: conflicts found in filename.sgml +C filename.sgml +</computeroutput> +</screen> + <para> + Para resolver o conflito, abra o arquivo, procure por + <computeroutput><<<<<<<</computeroutput> + e determine que versão do conteúdo é correta. Por exemplo: + </para> +<screen> +<computeroutput> +<para> +Uma sentença. +<<<<<<< filename.sgml +A sentença que foi mudada na cópia em trabalho. +======= +A mesma sentença que foi mudada diferentemente e aplicada. +>>>>>>> 1.13 +</para> +</computeroutput> +</screen> + <para> + O conteúdo entre + <computeroutput><<<<<<<</computeroutput>, + e <computeroutput>=======</computeroutput> é o conteúdo da sua cópia + local. O conteúdo entre o <computeroutput>=======</computeroutput> e + <computeroutput>>>>>>>></computeroutput> é o + conteúdo do servidor. + </para> + + <para> + Resolva o conflito editando a sua cópia, e aplicando (commit) o arquivo. + </para> + </section> + + <section id="sn-cvs-cvscommands-summary"> + <title>Sumário</title> + <indexterm> + <primary>cvs</primary> + <secondary>comandos</secondary> + <tertiary>sumário dos</tertiary> + </indexterm> + <para> + Todos os comandos assumem que você esteja no diretório apropriado do + módulo <application>CVS</application>. + </para> + <table frame="all" id="tb-cvs-basic-commands"> + <title>Comandos Básicos de CVS</title> + <tgroup cols="2"> + <colspec colnum="1" colname="shortcut" colwidth="30"/> + <colspec colnum="2" colname="description" colwidth="60"/> + <thead> + <row> + <entry>Comando</entry> + <entry>Descrição</entry> + </row> + </thead> + <tbody> + <row> + <entry><command>cvs checkout + <replaceable><nome-do-módulo></replaceable></command> + ou <command>cvs co <replaceable><nome-do-módulo></replaceable></command> + </entry> + <entry>Cria um diretório chamado + <replaceable><nome-do-módulo></replaceable> com o conteúdo do módulo no + diretório</entry> + </row> + <row> + <entry><command>cvs co -d + <replaceable><diretório></replaceable> -r <replaceable><nome-da-árvore></replaceable><replaceable><nome-do-módulo></replaceable></command> + </entry> + <entry>Cria o diretório <replaceable><diretório></replaceable> + com o conteúdo da árvore <replaceable><nome-da-árvore></replaceable> + do módulo <replaceable><nome-do-módulo></replaceable> módulo.</entry> + </row> + <row> + <entry><command>cvs update</command> ou <command>cvs up</command> + </entry> + <entry>Atualiza seus arquivos com os últimos arquivos do servidor + CVS.</entry> + </row> + <row> + <entry><command>cvs add <replaceable><arquivo></replaceable></command> + </entry> + <entry>Adiciona o novo arquivo "arquivo" ao servidor CVS</entry> + </row> + <row> + <entry><command>cvs commit -m "Minha mensagem" + <replaceable><arquivo></replaceable></command> + </entry> + <entry>Atualiza o arquivo + <replaceable><arquivo></replaceable> com a última cópia de + seu computador</entry> + </row> + <row> + <entry><command>cvs log <replaceable><arquivo></replaceable></command> + </entry> + <entry>Visualiza as mensagens de commit do arquivo <replaceable><arquivo></replaceable> + </entry> + </row> + <row> + <entry><command>cvs status <replaceable><arquivo></replaceable></command> + </entry> + <entry>Visualiza o estado do arquivo, como por exemplo + <computeroutput>Localmente Modificado</computeroutput> + </entry> + </row> + <row> + <entry><command>cvs status -v <replaceable><arquivo></replaceable></command> + </entry> + <entry>Visualiza as tags e árvores existentes para o arquivo</entry> + </row> + <row> + <entry><command>cvs diff <replaceable><arquivo></replaceable></command> + </entry> + <entry>Mostra a diferença entre sua cópia local do arquivo e a + última versão do arquivo na árvore</entry> + </row> + <row> + <entry><command>cvs diff -r1.1 -r1.2 <replaceable><arquivo></replaceable></command> + </entry> + <entry>Mostra a diferença do arquivo da versão 1.1 para a 1.2</entry> + </row> + </tbody> + </tgroup> + </table> + <para> + Para mais informações, leia o manual CVS disponível em seu sistema em + <filename>/usr/share/doc/cvs-<replaceable><número-de-versão></replaceable>/cvs.ps</filename> + (a versão do CVS pode variar) e visite a página do CVS disponível em + <ulink url="http://www.cvshome.org/">http://www.cvshome.org/</ulink>. + </para> + <tip> + <title>Dica</title> + <para> + Como o <application>CVS</application> está usando o + <application>ssh</application> para conectar-se ao servidor + <application>CVS</application>, você será perguntando por uma senha + antes de executar a instrução <application>CVS</application>. Se você + quiser configurar o seu sistema para que você não tenha que digitar a + senha, veja a página + <ulink url="http://redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/s1-openssh-client-config.html"><citetitle>&RH; + Linux 9 Customization Guide</citetitle> </ulink> para detalhes em como + usar o <command>ssh-agent</command>. + </para> + </tip> + </section> + </section> +</chapter> |