This patch series implements part of the ground work for the 'notes' feature discussed earlier in the thread "[PATCH 00/15] git-note: A mechanism for providing free-form after-the-fact annotations on commits". The following patches refactors the tag object by: 1. Making the "tag" header optional 2. Introducing a new optional "keywords" header 3. Making the "tagger" header mandatory as far as possible 4. Do better and more thorough verification of tag objects Unfortunately the first patch in the series is bigger than I would have liked, but I couldn't find an easy way to split it up. Here's the shortlog: Johan Herland (6): Refactor git tag objects; make "tag" header optional; introduce new optional "keywords" header git-show: When showing tag objects with no tag name, show tag object's SHA1 instead of an empty string git-fsck: Do thorough verification of tag objects. Documentation/git-mktag: Document the changes in tag object structure git-mktag tests: Fix and expand the mktag tests according to the new tag object structure Add fsck_verify_ref_to_tag_object() to verify that refname matches name stored in tag object Documentation/git-mktag.txt | 42 +++++-- builtin-fsck.c | 35 ++++++ builtin-log.c | 2 +- mktag.c | 148 +++++------------------- t/t3800-mktag.sh | 204 ++++++++++++++++++++++++++++++--- tag.c | 266 +++++++++++++++++++++++++++++++++++-------- tag.h | 4 +- 7 files changed, 507 insertions(+), 194 deletions(-) Have fun! ...Johan -- Johan Herland, <johan@xxxxxxxxxxx> www.herland.net - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html