Re: gerar e aplicar diffs
On Sun, 22 Apr 2001 15:21:11 -0300
Fernando Fraga e Silva <beakman@iname.com> wrote:
> diff configure.in configure.in.by.beak > configure.in.diff
>
> Mas o resultado foi diferente do que eu esperava , pois , esperava um arquivo
> com "+" e "-" e não com "<" ">" , e como eu faço para aplicar um diff.
diff -ub arquivo.a arquivo.b > patch-a.b
vai gerar um arquivo que explica o que deve ser feito com o arquivo.a
para que o resultado seja o arquivo.b
> O diffs são os que geram os patchs ?
não. os diffs são arquivos e servem de patches.
patch arquivo.a < patch-a.b
do exemplo anterior, vai dar como resultado arquivo.a o conteúdo do
arquivo.b
O -u gera um diff `unificado' mas em realidade, se não vai ser editado
manualmente, não é muito importante.
> Alguém poderia me dar uma luz ?
Vou tentar. É melhor não fazer os diffs de um só arquivo se pertence a
um pacote. Você pode usar a opção -r e fazer o diff para todos os
arquivos do diretório. Por exemplo, se você tem pacote-1.0.tar.gz, vai
descompactar e mudar o que deseja mudar. Quando terminar, você muda o
nome do directorio pactote-1.0 para pacote-1.0-ff e descomprime o
pacote origninal de novo. Digitando:
diff -rub pacote-1.0 pacote-1.0-ff > diff-1.0-1.0-ff
vai gerar um arquivo com o diff unificado que contem toda a informação
necessária para converter o conteúdo do diretório original no que você
deixou após as alterações. Isto tem algumas vantagens frente à
aplicação do diff arquivo por arquivo: (1) você manda só um
diff/patch, (2) a pessoa que vai aplicar o patch pode fazer o seguinte
(após descomprimir o pacote original e deixando o seu diff no mesmo
diretório):
cd pacoto-1.0
patch -p1 ../diff-1.0-1.0-ff
assim ele pode nomear o diretório original como quiser.
--
Christoph Simon
datageo@terra.com.br
---
^X^C
q
quit
:q
^C
end
x
exit
ZZ
^D
?
help
shit
.
Reply to: