Subject: Re: [PATCH v3 3/3] object-info: add option for retrieving object info

From: Junio C Hamano <[email-masked]>
Date: Tue, 29 Mar 2022 17:49:00 -0700

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

> Shouldn't we be making the part that we truly need to reuse into a
> separate API out of fetch-pack and either (1) allow new commands be
> easily written reusing the code to create "git remote-object-info"
> and "git remote-blame", or (2) come up with a single "do things on
> remote" command with various subcommands, i.e. "git over-there
> object-info" and "git over-there blame"?

For completeness, we could also make the "git archive" the gold
standard.  If we want "git blame" that is mostly executed on the
remote site, we could teach "git blame --remote <there>", which may
be where a user, who does not know nor care about how things are
implemented, would expect to find the feature.  Is "object-info" in
principle like executing "cat-file --batch-check" remotely?

I think that "Object 'size' is currently the only one the server
knows to emit", combined with the lack of any client side support so
far, means that it is not too late to rework the object-info thing
and possibly reuse more from "cat-file --batch-check".

If we can create a system where running things locally and remotely
are comparable in feature, that would be great, but I do not think
that is a realistic goal to aim for.

Thoughts?