merge(third_party/git): Merge squashed git subtree at v2.23.0
Merge commit '1b593e1ea4' as 'third_party/git'
This commit is contained in:
commit
7ef0d62730
3629 changed files with 1139935 additions and 0 deletions
61
third_party/git/Documentation/git-patch-id.txt
vendored
Normal file
61
third_party/git/Documentation/git-patch-id.txt
vendored
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
git-patch-id(1)
|
||||
===============
|
||||
|
||||
NAME
|
||||
----
|
||||
git-patch-id - Compute unique ID for a patch
|
||||
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'git patch-id' [--stable | --unstable]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
Read a patch from the standard input and compute the patch ID for it.
|
||||
|
||||
A "patch ID" is nothing but a sum of SHA-1 of the file diffs associated with a
|
||||
patch, with whitespace and line numbers ignored. As such, it's "reasonably
|
||||
stable", but at the same time also reasonably unique, i.e., two patches that
|
||||
have the same "patch ID" are almost guaranteed to be the same thing.
|
||||
|
||||
IOW, you can use this thing to look for likely duplicate commits.
|
||||
|
||||
When dealing with 'git diff-tree' output, it takes advantage of
|
||||
the fact that the patch is prefixed with the object name of the
|
||||
commit, and outputs two 40-byte hexadecimal strings. The first
|
||||
string is the patch ID, and the second string is the commit ID.
|
||||
This can be used to make a mapping from patch ID to commit ID.
|
||||
|
||||
OPTIONS
|
||||
-------
|
||||
|
||||
--stable::
|
||||
Use a "stable" sum of hashes as the patch ID. With this option:
|
||||
- Reordering file diffs that make up a patch does not affect the ID.
|
||||
In particular, two patches produced by comparing the same two trees
|
||||
with two different settings for "-O<orderfile>" result in the same
|
||||
patch ID signature, thereby allowing the computed result to be used
|
||||
as a key to index some meta-information about the change between
|
||||
the two trees;
|
||||
|
||||
- Result is different from the value produced by git 1.9 and older
|
||||
or produced when an "unstable" hash (see --unstable below) is
|
||||
configured - even when used on a diff output taken without any use
|
||||
of "-O<orderfile>", thereby making existing databases storing such
|
||||
"unstable" or historical patch-ids unusable.
|
||||
|
||||
This is the default if patchid.stable is set to true.
|
||||
|
||||
--unstable::
|
||||
Use an "unstable" hash as the patch ID. With this option,
|
||||
the result produced is compatible with the patch-id value produced
|
||||
by git 1.9 and older. Users with pre-existing databases storing
|
||||
patch-ids produced by git 1.9 and older (who do not deal with reordered
|
||||
patches) may want to use this option.
|
||||
|
||||
This is the default.
|
||||
|
||||
GIT
|
||||
---
|
||||
Part of the linkgit:git[1] suite
|
||||
Loading…
Add table
Add a link
Reference in a new issue