Difference between revisions of "Creating A Patch/pt"
(8 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | + | {{Creating A Patch}} | |
+ | ==Instruções== | ||
+ | Assume-se que você baixou o Lazarus via SVN [[Getting Lazarus#Via SVN| Getting Lazarus Via SVN]] | ||
+ | Abra o prompt de comando ou "prompt cmd" e mude, utilizando o comando cd, para o diretório onde estão os fontes do Lazarus. | ||
− | + | '''Instruções para Windows:''' | |
− | |||
− | |||
− | '''Instruções | ||
− | Vamos assumir que | + | Vamos assumir que você tem uma versão SVN atualizada do Lazarus em C:\lazarus |
# Abra um prompt do MS-DOS | # Abra um prompt do MS-DOS | ||
Line 13: | Line 13: | ||
# cd \lazarus {pressione enter} | # cd \lazarus {pressione enter} | ||
# svn diff > meu_path.diff {pressione enter} | # svn diff > meu_path.diff {pressione enter} | ||
+ | |||
+ | ''Nota: Se está usando TortoiseSVN, o usuário pode serlecionar o diretório onde o lazarus está atualizado pelo Windows Explorer, mostrar o menu de contexto - usando o botão direito do mouse - e selecionar TortoiseSVN -> Create Patch...'' | ||
'''Instruções Para Linux/BSD etc:''' | '''Instruções Para Linux/BSD etc:''' | ||
− | Vamos assumir que | + | Vamos assumir que você tem uma versão SVN atualizada do Lazarus em $HOME/lazarus |
− | # Abra seu programa de Terminal | + | # Abra seu programa de Terminal favorito |
# cd $HOME {pressione enter} | # cd $HOME {pressione enter} | ||
# cd lazarus {pressione enter} | # cd lazarus {pressione enter} | ||
Line 24: | Line 26: | ||
− | '' | + | ''Nota: Eu também gosto de verificar o arquivo completo para ver se não tem nada lá que não deveria estar lá..'' |
− | + | A forma recomendada para enviar o patch é através do [http://bugs.freepascal.org bug tracker]. Se existe um relatório enviado para o bug que o seu patch corrige, use ele, caso contrário crie um novo relato. Faça upload do arquivo para anexá-lo ao relato. | |
+ | |||
+ | Como alternativa, você pode comprimir (com zip ou gzip) o arquivo que você criou e mandar por email para a lista de e-mail do Lazarus (limite de 40 kB) ou para a caixa de e-mail para patchs [mailto:patch@lazarus.dommelstein.net patch@lazarus.dommelstein.net]. Quando enviar patches para a caixa de e-mail, certifique-se que no assunto comtém pelo menos uma palavra "patch", não necessariamente com as aspas. | ||
Isso é tudo! | Isso é tudo! | ||
== Problemas == | == Problemas == | ||
+ | Isso aplica-se geralmente ao Windows mas pode ser aplicável em outras plataformas também. | ||
− | + | '''Você recebe o erro "svn command not found" ou similar''' | |
+ | É provável que você não tenha o caminho do arquivo svn.exe na variável PATH do sistema. As etapas a seguir devem solucionar o problema: | ||
− | + | # Localize o arquivo snv.exe usando o menu "Pesquisar -> Arquivos e Pastas" do menu Iniciar. | |
− | + | # Uma vez localizado o arquivo snv.exe você precisa adicionar o diretório dele na variável PATH do sistema. | |
+ | Como por exemplo: apartir do prompt de comando digite: | ||
+ | set PATH=%PATH%;"C:\Arquivos de Programas\TortoiseSVN\" | ||
− | + | ''Nota: O diretório onde está o svn.exe pode não ser o mesmo do computador usado nesse documento. Esse diretório foi usado apenas como exemplo.'' | |
− | |||
− | |||
− | |||
− | + | Os passos a seguir são opcionais: | |
+ | '''Para tornar a alteração permanente''' | ||
− | + | No Windows98 ou anteriores, você pode adicionar a linha acima (ou similar) ao seu arquivo C:\autoexec.bat próximo ao fim do arquivo. | |
− | + | No Windows 2000 ou posteriores, você pode adicionar esse diretório na variável PATH assim: | |
− | + | # Clique com o botão direito em "Meu Computador" | |
+ | # Selecione "Propriedades" | ||
+ | # Escolha a guia/aba "Avançado" | ||
+ | # Clique no botão "Variáveis de ambiente" | ||
+ | # Localize a linha "Path" em "Variáveis de ambiente" e adicione: ;"C:\Arquivos de Programas\TortoiseSVN\" no final dela. | ||
− | + | ''Nota: O diretório onde está o svn.exe pode não ser o mesmo do computador usado nesse documento. Esse diretório foi usado apenas como exemplo.'' | |
− | + | ==Aplicando um patch== | |
− | + | Aplicar um patch é simples. Você pode testar o patch usando o parâmetro --dry-run dessa forma: | |
− | |||
− | |||
− | |||
− | + | patch --dry-run < mypatch.diff | |
− | + | A saída do programa "patch" será identica ao patch atual, apenas se ele não alterar os arquivos fontes. Isso é muito útil para testes, visto que dispensa a necessidade de escrever no código fonte. | |
− | |||
+ | Para aplicar finalmente o patch, você usa a seguinte linha de comando: | ||
− | patch | + | patch < mypatch.diff |
+ | Ou, para arrumar separadores: | ||
− | + | patch -p0 < mypatch.diff | |
− | + | [[Category:Debugging/pt]] | |
− | |||
− | |||
− |
Latest revision as of 11:48, 3 August 2011
│
Deutsch (de) │
English (en) │
español (es) │
français (fr) │
日本語 (ja) │
português (pt) │
русский (ru) │
slovenčina (sk) │
Instruções
Assume-se que você baixou o Lazarus via SVN Getting Lazarus Via SVN
Abra o prompt de comando ou "prompt cmd" e mude, utilizando o comando cd, para o diretório onde estão os fontes do Lazarus.
Instruções para Windows:
Vamos assumir que você tem uma versão SVN atualizada do Lazarus em C:\lazarus
- Abra um prompt do MS-DOS
- c: {pressione enter}
- cd \lazarus {pressione enter}
- svn diff > meu_path.diff {pressione enter}
Nota: Se está usando TortoiseSVN, o usuário pode serlecionar o diretório onde o lazarus está atualizado pelo Windows Explorer, mostrar o menu de contexto - usando o botão direito do mouse - e selecionar TortoiseSVN -> Create Patch...
Instruções Para Linux/BSD etc:
Vamos assumir que você tem uma versão SVN atualizada do Lazarus em $HOME/lazarus
- Abra seu programa de Terminal favorito
- cd $HOME {pressione enter}
- cd lazarus {pressione enter}
- svn diff > meu_path.diff {pressione enter}
Nota: Eu também gosto de verificar o arquivo completo para ver se não tem nada lá que não deveria estar lá..
A forma recomendada para enviar o patch é através do bug tracker. Se existe um relatório enviado para o bug que o seu patch corrige, use ele, caso contrário crie um novo relato. Faça upload do arquivo para anexá-lo ao relato.
Como alternativa, você pode comprimir (com zip ou gzip) o arquivo que você criou e mandar por email para a lista de e-mail do Lazarus (limite de 40 kB) ou para a caixa de e-mail para patchs patch@lazarus.dommelstein.net. Quando enviar patches para a caixa de e-mail, certifique-se que no assunto comtém pelo menos uma palavra "patch", não necessariamente com as aspas.
Isso é tudo!
Problemas
Isso aplica-se geralmente ao Windows mas pode ser aplicável em outras plataformas também.
Você recebe o erro "svn command not found" ou similar É provável que você não tenha o caminho do arquivo svn.exe na variável PATH do sistema. As etapas a seguir devem solucionar o problema:
- Localize o arquivo snv.exe usando o menu "Pesquisar -> Arquivos e Pastas" do menu Iniciar.
- Uma vez localizado o arquivo snv.exe você precisa adicionar o diretório dele na variável PATH do sistema.
Como por exemplo: apartir do prompt de comando digite:
set PATH=%PATH%;"C:\Arquivos de Programas\TortoiseSVN\"
Nota: O diretório onde está o svn.exe pode não ser o mesmo do computador usado nesse documento. Esse diretório foi usado apenas como exemplo.
Os passos a seguir são opcionais:
Para tornar a alteração permanente
No Windows98 ou anteriores, você pode adicionar a linha acima (ou similar) ao seu arquivo C:\autoexec.bat próximo ao fim do arquivo.
No Windows 2000 ou posteriores, você pode adicionar esse diretório na variável PATH assim:
- Clique com o botão direito em "Meu Computador"
- Selecione "Propriedades"
- Escolha a guia/aba "Avançado"
- Clique no botão "Variáveis de ambiente"
- Localize a linha "Path" em "Variáveis de ambiente" e adicione: ;"C:\Arquivos de Programas\TortoiseSVN\" no final dela.
Nota: O diretório onde está o svn.exe pode não ser o mesmo do computador usado nesse documento. Esse diretório foi usado apenas como exemplo.
Aplicando um patch
Aplicar um patch é simples. Você pode testar o patch usando o parâmetro --dry-run dessa forma:
patch --dry-run < mypatch.diff
A saída do programa "patch" será identica ao patch atual, apenas se ele não alterar os arquivos fontes. Isso é muito útil para testes, visto que dispensa a necessidade de escrever no código fonte.
Para aplicar finalmente o patch, você usa a seguinte linha de comando:
patch < mypatch.diff
Ou, para arrumar separadores:
patch -p0 < mypatch.diff