Patches são amplamente usados em sistemas semelhantes ao UNIX para propagar pequenas alterações feitas em conjuntos de arquivos diferentes (por exemplo, código-fonte de software). Eles contêm apenas informações sobre as edições que precisam ser feitas no arquivo original para modificá-lo para seu estado atual.
Necessário
utilitário diff instalado
Instruções
Passo 1
Prepare um arquivo de origem com informações que você criará um patch para alterar. Os dados no arquivo podem ser de texto e binários
Passo 2
Crie uma duplicata do arquivo preparado na primeira etapa. Copie-o para outro diretório com o mesmo nome ou para o diretório atual, mas com um nome diferente
etapa 3
Modifique o arquivo duplicado criado na etapa anterior. Edite o texto conforme apropriado em um editor adequado ou substitua os dados no arquivo com o aplicativo que pretende trabalhar com ele
Passo 4
Revise as informações sobre como usar o utilitário diff. Inicie um emulador de terminal ou mude para o console. Execute o comando: diff --help para exibir a ajuda online. Experimente os comandos: man diff ou info diff para exibir as páginas de documentação apropriadas, se instaladas. Preste atenção especial às opções -a, -c (-C), -e, --normal e -n (--rsc)
Etapa 5
Crie um patch. Execute o comando diff com as opções desejadas, redirecionando sua saída para um arquivo. Especifique os arquivos originais e modificados como parâmetros de acordo com as opções. O exemplo mais simples de usar diff para gerar um patch baseado em dados de arquivos localizados no diretório atual pode ser parecido com este: diff source.txt modificado.txt> sample.patc
Etapa 6
Veja o patch gerado. Use um editor de texto adequado ou imprima seu conteúdo no console com o comando cat. Por exemplo: cat sample.patch ou cat sample.patch | mai
Etapa 7
Verifique a exatidão do arquivo de mudança criado. Use o comando patch. Passe o caminho do patch para ele com a opção -i. Use a opção -o para atribuir um nome de arquivo ao resultado. Isso impedirá a substituição do arquivo original, cujo caminho deve ser especificado como o último parâmetro. Por exemplo: patch -i sample.patch -o test.txt source.txt Compare o arquivo gerado e aquele que foi criado na terceira etapa. Eles devem ser idênticos. Execute o comando patch com os parâmetros --dry-run e --verbose, passando o penúltimo e último argumento para os nomes dos arquivos de origem e patch: patch --dry-run --verbose source.txt sample.patch Nenhuma mudança será ser feito para os arquivos, mas um relatório detalhado sobre as ações que teriam sido realizadas se o comando fosse realmente executado será exibido. Também pode ser usado para julgar a exatidão do patch criado.