• J
    do_one_ref(): null_sha1 check is not about broken ref · eafb4526
    Junio C Hamano 提交于
    f8948e2f (remote prune: warn dangling symrefs, 2009-02-08) introduced a
    more dangerous variant of for_each_ref() family that skips the check for
    dangling refs, but it also made another unrelated check optional by
    mistake.
    
    The check to see if a ref points at 0{40} is not about brokenness, but is
    about a possible future plan to represent a deleted ref by writing 40 "0"
    in a loose ref when there is a stale version of the same ref already in
    .git/packed-refs, so that we can implement deletion of a ref without
    having to rewrite the packed refs file excluding the ref being deleted.
    
    This check has to live outside of the conditional.
    Signed-off-by: NJunio C Hamano <gitster@pobox.com>
    eafb4526
refs.c 41.9 KB