Revnos were supposed to be superior to using sha1 (or shortened sha1)
as commit identifiers because of two key features:
1. They were simplier than sha1, therefore easier to use
2. Given two revisions related by lineage (i.e. one is ancestor of
the other) you can from a glance know which revision was earlier
But the details invalidated 1.: for complicated history, for a large
project, with many contributors and nonlinear development we have
www.repository.com:127.2.31.57 vs 988859a (7 chars shortcut of sha1)
to have immutable revno. And we have to use _immutable_ (up to few
years) revison identifiers, unless we want our "simple ids" scheme
to make a mess...
And I'm not sure if 2. is true, if even for revisions with direct
lineage we don't have to compare 127.15.2.16 with 210.2.20.3 for
example. Having generation number would solve 2.; as of now git
check for fast-forward case by checking if merge-base of two
revisions is one of the revisions.
--
Jakub Narebski
Poland
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html