From 074785cea106179cb3305637055ab0a009ca74f2 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:42:52 -0500 Subject: initial commit --- files/pt-pt/criando_um_patch/index.html | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 files/pt-pt/criando_um_patch/index.html (limited to 'files/pt-pt/criando_um_patch') diff --git a/files/pt-pt/criando_um_patch/index.html b/files/pt-pt/criando_um_patch/index.html new file mode 100644 index 0000000000..0ebf20b893 --- /dev/null +++ b/files/pt-pt/criando_um_patch/index.html @@ -0,0 +1,33 @@ +--- +title: Criando um patch +slug: Criando_um_patch +tags: + - Desenvolvimento_Mozilla + - Todas_as_Categorias +translation_of: Mercurial/Using_Mercurial +--- +

 

+

Depois de obter o código fonte, modifique-o, compile-o e teste-o, você pode querer receber suas mudanças revisadas e checadas]. Em ordem de fazer isto, você precisa criar um arquivo listando as mudanças que você fez, chamado patch ou diff file. Você pode gerá-lo usando o comando cvs diff.

+

Criando um diff de um arquivo único

+

Em ordem para criar um diff de um arquivo local único contra o arquivo atual no repositório, use:

+
$ cvs diff -u8p FILENAME
+
+

Isto cria um diff no então chamado formato 'unified' (-u), com 8 linhas de contexto. O diff é impresso para stdout por padrão. Para redirecionar a saída para um arquivo, use algo como:

+
$ cvs diff -u8p FILENAME > OUT_FILE
+
+

Criando um diff para arquivos múltiplos

+

Se, ao invés de usar um arquivo regular para FILENAME, você providenciar um diretório, então este diretório assim como todos os subdiretórios serão buscados recursivamente. Por exemplo

+
$ cvs diff -u8p . > OUT_FILE
+
+

comparará todos os arquivos no diretório corrente e todos os seus subdiretórios contra as versões no repositório, e escreverá as diffs combinadas e unificadas para um arquivo chamado OUT_FILE, usando 8 linhas de contexto.

+

Deve haver contexto suficiente no patch para que seja endendido sem abrir o código fonte. A linha-guia padrão é usar 8 linhas de contexto; se for colocado mais contexto, é necessário fazer o patch entendível, substitua 8 por um número maior. Também note que a maior quantidade de contexto que você inclui, aumenta a chance de permitir também aplicar o patch a um arquivo que difere pesadamente do código original contra o que o diff foi preparado.

+

Incluindo novos arquivo em um patch

+

Para incluir um novo arquivo em seu patch use a opção -N:

+
$ cvs diff -u8pN . > OUT_FILE
+
+

Um problema comum aqui é que cvs diff não incluirá os novos arquivos que não foram cvs added (cvs adicionado), e cvs requer acesso de escrita ao repositório.

+

A solução é usar a utilidade cvsdo , que edita CVS/Entries para fazer o cvs pensar que o arquivo foi adicionado ao repositório:

+
$ cvsdo add NEWFILE
+$ cvs diff -u8pN NEWFILE > OUT_FILE
+
+

Note que este truque não trabalhará para novos diretórios; para isto, cvs add atualmente têm de modificar o repositório imediatamente, que requere acesso à escrita

-- cgit v1.2.3-54-g00ecf