Subject: Re: [PATCH] use child_process_init() to initialize struct child_process variables

From: Junio C Hamano <[email-masked]>
Date: Tue, 04 Nov 2014 13:56:15 -0800

Junio C Hamano <[email-masked]> writes:

> Jeff King <[email-masked]> writes:
>
>> I peeked at libgit2 and I think it does not support bundles at all yet,
>> so that is safe. Grepping for "bundle" in dulwich turns up no hits,
>> either.
>>
>> Looks like JGit does support them. I did a very brief test, and it seems
>> to silently ignore a HEAD ref that has the NUL (I guess maybe it just
>> rejects it as a malformed refname).
>>
>> We could make JGit happier either by:
>>
>>   1. Only including the symref magic in ambiguous cases, so that regular
>>      ones Just Work as usual.
>>
>>   2. Including two lines, like:
>>
>>         $sha1 HEAD\0symref=refs/heads/master
>> 	$sha1 HEAD
>>
>>      which JGit does the right thing with (and git.git seems to, as
>>      well).
>
> Sounds sensible, even though it looks ugly X-<.

I have a mild preference for a syntax that is more similar to the
on-wire protocol, so that connect.c::parse_feature_value() can be
reused to parse it and possibly annotate_refs_with_symref_info() can
also be reused by calling it from transport.c::get_refs_from_bundle().