Re: Suggestion: superceded tags
From: Stephen C. Tweedie <hidden>
Date: 2016-06-15 22:41:58
Hi, On Fri, 2005-05-27 at 06:29, H. Peter Anvin wrote:
When a tag is moved, a new tag object is created. This tag object will have a "supercedes" header which references the old tag object.
Strictly speaking, don't you need to allow multiple "supercedes" lines to cover all the cases? The pathological case is when you've got multiple trees all with different variants of the same tag name, and you try to merge them all at once with a multi-parent commit. Sure, tags refer to trees, not commits, so you don't necessarily have to do this tag resolution at commit time (indeed, since commits don't refer to tags, you *can't* do that resolution atomically on commit.) But if you do pull tags into the local .git/refs/tags on merge, then you will want to either resolve the conflict or supercede those tags, and at that point you've got multiple equally valid tags in the histories that are being superceded. Doing so is a porcelain issue, but the core will still need to understand tags with multiple supercedes: lines. --Stephen