Change the mktag documentation to compare itself to the similar "hash-object -t tag" command. Before this someone reading the documentation wouldn't have much of an idea what the difference was. Let's make it clear that it's to do with slightly different fsck validation logic, and cross-link the "mktag" and "hash-object" documentation to aid discover-ability. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> --- Documentation/git-hash-object.txt | 4 ++++ Documentation/git-mktag.txt | 29 +++++++++++++++++++++++++---- 2 files changed, 29 insertions(+), 4 deletions(-) diff --git a/Documentation/git-hash-object.txt b/Documentation/git-hash-object.txt index df9e2c58bd..c535661ced 100644 --- a/Documentation/git-hash-object.txt +++ b/Documentation/git-hash-object.txt @@ -58,6 +58,10 @@ OPTIONS stress-testing Git itself or reproducing characteristics of corrupt or bogus objects encountered in the wild. +SEE ALSO +-------- +linkgit:git-mktag[1] + GIT --- Part of the linkgit:git[1] suite diff --git a/Documentation/git-mktag.txt b/Documentation/git-mktag.txt index fa6a756123..11ce8e4bb4 100644 --- a/Documentation/git-mktag.txt +++ b/Documentation/git-mktag.txt @@ -3,7 +3,7 @@ git-mktag(1) NAME ---- -git-mktag - Creates a tag object +git-mktag - Creates a tag object with extra validation SYNOPSIS @@ -13,10 +13,20 @@ SYNOPSIS DESCRIPTION ----------- -Reads a tag contents on standard input and creates a tag object -that can also be used to sign other objects. -The output is the new tag's <object> identifier. +Reads a tag contents on standard input and creates a tag object. The +output is the new tag's <object> identifier. + +This command accepts a subset of what linkgit:git-hash-object[1] would +accept with `-t tag --stdin`. I.e. both of these work: + + git mktag <my-tag + git hash-object -t tag --stdin <my-tag + +The difference between the two is that mktag does the equivalent of a +linkgit:git-fsck(1) check on its input, and furthermore disallows some +thing linkgit:git-hash-object[1] would pass, e.g. extra headers in the +object before the message. Tag Format ---------- @@ -34,6 +44,17 @@ exists, is separated by a blank line from the header. The message part may contain a signature that Git itself doesn't care about, but that can be verified with gpg. +HISTORY +------- + +In versions of Git before v2.30.0 the "mktag" command's validation +logic was subtly different than that of linkgit:git-fsck[1]. It is now +a strict superset of linkgit:git-fsck[1]'s validation logic. + +SEE ALSO +-------- +linkgit:git-hash-object[1], + GIT --- Part of the linkgit:git[1] suite -- 2.29.2.222.g5d2a92d10f8