Re: What's cooking in git.git (Jan 2018, #02; Tue, 9)
- From
- Jonathan Tan <jonathantanmy@google.com>
- Date
- Jan 18, 2018, 22:31 UTC
- Message-ID
- <20180118143109.bc0eb10b036411e0a5a3694f@google.com>
- In-Reply-To
- <CAP8UFD0P7kVo2NP4Wq7OaSV4H1+sqHapuzW5AQef+enNS0S5hw@mail.gmail.com>
On Thu, 18 Jan 2018 09:56:50 +0100 Christian Couder <christian.couder@gmail.com> wrote:
> I am still not very happy with fetch_object() not returning anything. > I wonder what happens when that function is used to fetch from a repo > that cannot provide the requested object.
My idea was to save a verification step - the caller of fetch_object() needs to reattempt the object load anyway (which includes a verification that the object exists), so I didn't see the need to have fetch_object() do it too.
Show 5 quoted lines
> Also I think the "extensions.partialclone = <remote>" config option is > not very future proof. If people start using partial clone, it is > likely that at some point they will need their repo to talk to more > than one remote that is partial clone enabled and I don't see how such > a config option can scale in this case.
In the case that they want to talk to more than one partial-clone-enabled repo, I think that there still needs to be one "default" remote from which missing objects are fetched. I can think of a few reasons for that - for example, (a) we need to support commands that give a nonexistent-in-repo SHA-1 directly, and (b) existing Git code relies on the ability to fetch an object given only its SHA-1. (a) can be overcome by forbidding that (?) and (b) can be overcome by an overhaul of the object-fetching and object-using code, but I don't think both (a) and (b) will occur anytime soon.