Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.39.1 → 2.47.0 no changes
- 2.39.0 12/12/22
- 2.15.4 → 2.38.5 no changes
- 2.14.6 no changes
- 2.7.6 → 2.13.7 no changes
- 2.6.7 05/05/17
- 2.2.3 → 2.5.6 no changes
- 2.1.4 12/17/14
- 2.0.5 12/17/14
DESCRIÇÃO
Carregue um patch da entrada padrão e calcule o ID para ele.
Um "patch ID" nada mais é do que uma soma de SHA-1 das diferenças de arquivo associadas a uma correção, ignorando os números de linha. Dessa maneira, ele é "razoavelmente estável", mas ao mesmo tempo também é razoavelmente exclusivo, ou seja, duas correções que tenham o mesmo "patch ID" são quase garantidos como sendo a mesma coisa.
O principal caso de uso para este comando é procurar por commits possivelmente duplicados.
Ao lidar com a saída do comando git diff-tree, ele aproveita a vantagem que a correção é prefixado com o nome do objeto do commit e gera duas strings hexadecimais com 40 bytes. A primeira string é o ID da correção e a segunda string é o ID do commit. Isso pode ser usado para fazer um mapeamento do "patch ID" para o ID do commit.
OPÇÕES
- --verbatim
-
Calcule o patch-id da entrada conforme é fornecido, não retire nenhum espaço em branco.
Este é o padrão caso `patchid.verbatim` seja verdadeiro.
- --stable
-
Use uma soma "stable" (estável) de hashes como o ID do patch. Com esta opção:
-
A reordenação das diferenças de arquivos que compõem uma correção não afeta a ID. Especificamente, duas correções produzidos pela comparação das mesmas duas árvores com duas configurações diferentes para "-O<ordem-do-arquivo>" resultam na mesma assinatura ID da correção, permitindo assim que o resultado computado seja usado como uma chave para indexar algumas meta-informações sobre a alteração entre as duas árvores;
-
O resultado é diferente do valor produzido pelo git 1.9 e mais antigo ou produzido quando um hash "instável" (consulte
--unstable
abaixo) é configurado - mesmo quando utilizado com um diff gerado obtido sem o uso de "-O<ordem-do-arquivo>", tornando, assim, os bancos de dados existentes armazenando esses IDs "instáveis" ou os históricos com correções inúteis. -
Todos os espaços em branco dentro do patch são ignorados e não afetam o id.
Esta é a predefinição caso o `patchid.stable` estiver definido como 'true'.
-
- --unstable
-
Use um hash "instável" como "patch ID". Com esta opção, o resultado produzido é compatível com o valor do "patch-id" produzido pelo git 1.9 e anteriores, e os espaços em branco são ignorados. Os usuários com bancos de dados pré-existentes que armazenam os "patch-ids" produzidos pelo git 1.9 e anteriores (que não lidam com correções reordenadas) podem querer usar essa opção.
Esta é a predefinição.
GIT
Parte do conjunto git[1]