Subject: Re: Suggestion: superceded tags

From: "H. Peter Anvin" <[email-masked]>
Date: Fri, 27 May 2005 09:10:10 -0700

Stephen C. Tweedie wrote:
> 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.
> 

Indeed, multiple supercedes lines are useful to conver the resolution of 
a tag conflict.

	-hpa