Dmitry Ivankov wrote: > null_sha1 is used in fast-import to indicate "empty" branches and > should never be actually written out as a commit parent. 'merge' > command lacks is_null_sha1 checks and must be fixed. Yeah. > It looks like using null_sha1 or empty branches in 'from' command > is legal and/or an intended option (it has been here from the very > beginning and survived). So leave it allowed for 'merge' command too, > and just like with 'from' command silently skip null_sha1 parents. Ok, fair enough. Are there any tests in the test script for the "create new branch from unborn branch" trick? Is this worth documenting so other backend authors know what they need to do to support frontends that work with git fast-import? [...] > --- a/fast-import.c > +++ b/fast-import.c > @@ -2734,7 +2734,8 @@ static void parse_new_commit(void) > strbuf_addf(&new_data, "parent %s\n", sha1_to_hex(b->sha1)); > while (merge_list) { > struct hash_list *next = merge_list->next; > - strbuf_addf(&new_data, "parent %s\n", sha1_to_hex(merge_list->sha1)); > + if (!is_null_sha1(merge_list->sha1)) > + strbuf_addf(&new_data, "parent %s\n", sha1_to_hex(merge_list->sha1)); Acked-by: Jonathan Nieder <jrnieder@xxxxxxxxx> -- 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