• J
    [PATCH] Dereference tag repeatedly until we get a non-tag. · 013aab82
    Junio C Hamano 提交于
    When we allow a tag object in place of a commit object, we only
    dereferenced the given tag once, which causes a tag that points at a tag
    that points at a commit to be rejected.  Instead, dereference tag
    repeatedly until we get a non-tag.
    
    This patch makes change to two functions:
    
     - commit.c::lookup_commit_reference() is used by merge-base,
       rev-tree and rev-parse to convert user supplied SHA1 to that of
       a commit.
     - rev-list uses its own get_commit_reference() to do the same.
    
    Dereferencing tags this way helps both of these uses.
    Signed-off-by: NJunio C Hamano <junkio@cox.net>
    Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
    013aab82
rev-list.c 11.6 KB