Martin Langhoff <[email protected]>:
> If someone creates a nonsensical tag or branch point, tagging files
> from different commits, how do you handle it?
>
> - without commit ids, does it affect your guesses?
No. Tagging is never used to deduce changesets. Look:
/*
* The heart of the merge operation; detect when two
* commits are "the same"
*/
static bool
rev_commit_match (rev_commit *a, rev_commit *b)
{
/*
* Versions of GNU CVS after 1.12 (2004) place a commitid in
* each commit to track patch sets. Use it if present
*/
if (a->commitid && b->commitid)
return a->commitid == b->commitid;
if (a->commitid || b->commitid)
return false;
if (!commit_time_close (a->date, b->date))
return false;
if (a->log != b->log)
return false;
if (a->author != b->author)
return false;
return true;
}
> - regardless of commit ids, do you synthesize an artificial commit?
> How do you define parenthood for that artificial commit?
Because tagging is never used to deduce changesets, the case does not arise.
I have added an item to my to-do: document what the tool does with
inconsistent tags.
--
<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html