[PATCH v4 5/6] patch-id: document new behaviour
- From
- Michael S. Tsirkin <mst@redhat.com>
- Date
- Apr 23, 2014, 12:15 UTC
- Message-ID
- <1398255277-26303-5-git-send-email-mst@redhat.com>
- In-Reply-To
- <1398255277-26303-1-git-send-email-mst@redhat.com>
Clarify that patch ID can now be a sum of hashes, not a hash. Document how command line and config options affect the behaviour.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> --- Documentation/git-patch-id.txt | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-)
diff --git a/Documentation/git-patch-id.txt b/Documentation/git-patch-id.txt index 312c3b1..61d4a67 100644 --- a/Documentation/git-patch-id.txt +++ b/Documentation/git-patch-id.txt @@ -8,14 +8,14 @@ git-patch-id - Compute unique ID for a patch SYNOPSIS -------- [verse] -'git patch-id' < <patch> +'git patch-id' [--stable | --unstable] < <patch> DESCRIPTION ----------- -A "patch ID" is nothing but a SHA-1 of the diff 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. +A "patch ID" is nothing but a sum of SHA-1 of the diff hunks 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. @@ -27,6 +27,21 @@ This can be used to make a mapping from patch ID to commit ID. OPTIONS ------- + +--stable:: + Use a symmetrical sum of hashes as the patch ID. + With this option, reordering file diffs that make up a patch or + splitting a diff up to multiple diffs that touch the same path + does not affect the ID. + This is the default if patchid.stable is set to true, or if patchid.stable + is not set and diff.orderfile is set to some value. + +--unstable:: + Use a non-symmetrical sum of hashes, such that reordering + or splitting the patch does affect the ID. + This is the default if patchid.stable is set to false, or if neither patchid.stable + nor diff.orderfile are set. + <patch>:: The diff to create the ID of.
-- MST