Michael Haggerty <mhagger@xxxxxxxxxxxx> writes: > The point is that `read_ref_full()` is now called with > `RESOLVE_REF_NO_RECURSE` turned on. So if `newrefname` is a symbolic > reference, then `read_ref_full()` sets `sha1` to zeros. Yes, that was an obvious rationale in the patch that was not explained in the proposed log message (and made me ask you to explain it). I was wondering why this was not loosened conditionally (i.e. only pass null_sha1 when symbolic ref is involved, in which case you _must_ pass null_sha1 because we no longer have anything to compare with). Your explanation on the "in all possible interleaving, deletion of what might have been updated in the middle by other people does not matter" was a sufficient explanation why it does not have to be conditional. > I'll document this in v2 of this patch. Thanks. -- 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