Re: [Question] Is extensions.partialClone defunct?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 12, 2020 at 6:51 PM Jonathan Nieder <jrnieder@xxxxxxxxx> wrote:
>
> Jonathan Tan wrote:
> > Derrick Stolee wrote:
>
> >> but it appears that we rely on the "remote.<name>.promisor = true"
> >> setting instead of this extension.
> >
> > Hmm...besides giving the name of the promisor remote, the
> > extensions.partialClone setting is there to prevent old versions of Git
> > (that do not know this extension) from manipulating the repo.

That could be true of "remote.<name>.promisor = true".

> Yes, so the lack of setting is a bug.
>
> Christian, what would your prefered way be to fix this?  Should
> extensions.partialclone specify a particular "default" promisor
> remote, or should we use a new repository extension for multiple
> promisors?

My opinion has always been that "extensions.partialClone = <remote>"
is a mistake as it is inherently making difficult to have many
promisor remotes.

It is also not clear what a default should be. Should it be the last
promisor remote that is tried when all the others couldn't provide all
the needed objects? Or should it be the first one that is tried? And
what if the order should be different when pushing and when fetching?

I think it is much clearer to have an order (that could be different
when pushing and fetching) in which promisor remotes are tried.

So I'd rather obsolete "extensions.partialClone = <remote>" and to
find other ways.

> [...]
> > I cloned and indeed it is as Stolee describes. Git still works as
> > expected if I remove "promisor = true" and add
> > "[extensions]\npartialclone=origin", so at least extensions.partialClone
> > is still supported, even if not written by default.

Yeah, I didn't remove support for it. Maybe we could have
"[extensions]\npartialclone=<bool>" though that feels messy, or maybe
we could have another extension alltogether like
"[extensions]\npromisorremotes=<bool>" and over time obsolete
"extensions.partialClone" altogether. I prefer the later.



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux