From: "Junio C Hamano" <gitster@xxxxxxxxx>
Sent: Wednesday, August 29, 2012 10:17 PM
So here is an attempt to teach "name-rev" a mode that tries to base
its name on oldest tag that can reach the commit. It needs the
reset_revision_walk() call recently added to the revision traversal
API, and applies to bcc0a3e (v1.7.11-rc0~111^2~2) or newer.
Note that this can benefit from caching, as the "weight" of the tag
(rather, the commit that is tagged) will never change once a history
is made, but that part is left as an exercise to the reader.
Is "--weight" the right term to use for the user (cli) interface?
Wouldn't '--oldest' (or similar) be a better statement of what is
desired (absent clock skew).
While 'weight' may be a good internal technical description it didn't
convey to me what was being sought (maybe -- deepest'?).
It correctly names 0136db586c in the kernel history as based on
v3.5-rc1 as tags/v3.5-rc1~83^2~81^2~76, not on v3.6-rc1, as we saw
on the list recently.
Once it is verified to operate correctly and updated to perform
properly, we can start passing --weight when "describe --contains"
runs the command.
Junio C Hamano (3):
name-rev: lose unnecessary typedef
name_rev: clarify when a new tip-name is assigned to a commit
name-rev: --weight option (WIP)
builtin/name-rev.c | 142
++++++++++++++++++++++++++++++++++++++++++++---------
1 file changed, 120 insertions(+), 22 deletions(-)
--
1.7.12.285.ga3d5fc0
--
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