On Sat, Feb 27, 2016 at 4:19 PM, Jeff King <[email protected]> wrote:
> On Sat, Feb 27, 2016 at 02:07:12PM -0500, Jeff King wrote:
>
>> We expect whoever creates the "sought" list to fill in the name and sha1
>> as appropriate. If that is not happening in some code path, then yeah,
>> filter_refs() will not work as intended. But I think the solution there
>> would be to fix the caller to set up the "struct ref" more completely.
>>
>> Gabriel, did this come from a bug you noticed in practice, or was it
>> just an intended cleanup?
I was experimenting with uploadpack.hiderefs and uploadpack.allowTipSHA1InWant
and couldn't get
git fetch-pack $remote <sha1>
to work, and I traced the failure until that check. Reading more, I now see
that currently it requires
git fetch-pack $remote "<sha1> <sha1>"
to do what I want.
>
> I double-checked that the code for git-fetch does so. It's in
> get_fetch_map()
>
> if (refspec->exact_sha1) {
> ref_map = alloc_ref(name);
> get_oid_hex(name, &ref_map->old_oid);
> } else ...
>
> So we should always have old_oid filled in already, and there is no need
> to do so in filter_refs() (and in fact it is wrong, for the degenerate
> example I gave earlier).
git fetch-pack doesn't use these code paths. I'll send a new patch
shortly to allow
bare sha1's in fetch-pack.
>
> -Peff
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html