patch
Processamento de texto
Uso
patch -p1 < [file.patch]Aplica um diff nos arquivos; -p decide quantos componentes do caminho descartar, e um diff do git precisa de -p1 por causa dos prefixos a/ e b/.
Opções comuns
| Opção | Significado |
|---|---|
| -pN | Strip N leading path components; git diffs need -p1 |
| -R | Apply the patch backwards to undo it |
| --dry-run | Test whether it applies and change nothing |
| -i | Read the patch from a file instead of standard input |
| -b | Keep a backup of every file it changes |
Exemplos
patch -p1 < fix.patchApplies a git-style patch from the repo root.
patch -p1 -R < fix.patchUndoes it again.
patch -p1 --dry-run < fix.patchChecks it applies cleanly first.
Foram feitos para serem encadeados com pipes. Três comandos ligados costumam ser mais curtos que um que faça tudo.
Como ler
- Os colchetes [ ] marcam uma parte que você pode omitir.
- As reticências … indicam que você pode listar vários.
- As opções diferenciam maiúsculas: em alguns comandos -r e -R fazem coisas diferentes.
Perguntas
Q. O que patch faz?
Aplica um diff nos arquivos; -p decide quantos componentes do caminho descartar, e um diff do git precisa de -p1 por causa dos prefixos a/ e b/.
Q. Como se digita?
patch -p1 < [file.patch] — os colchetes marcam o que você pode omitir.
Q. Quantas opções vale a pena saber?
Aqui estão 5; a lista completa está em man patch. Este comando fica em Processamento de texto.
Comandos relacionados
página man: man patch