From: Michael Haggerty <mhagger@alum.mit.edu>
To: Junio C Hamano <gitster@pobox.com>, Jeff King <peff@peff.net>
Cc: Matt Whiteley <mattwhiteley@gmail.com>, git@vger.kernel.org
Subject: Re: [PATCH 1/2] clone: add disassociate alias to dissociate option
Date: Tue, 24 Feb 2015 10:06:00 +0100 [thread overview]
Message-ID: <54EC3EF8.7040302@alum.mit.edu> (raw)
In-Reply-To: <xmqqvbitx0eh.fsf@gitster.dls.corp.google.com>
On 02/22/2015 07:32 PM, Junio C Hamano wrote:
> Jeff King <peff@peff.net> writes:
>
>> I wonder if there is some better word that could become a synonym for
>> "--reference --dissociate". Maybe "--borrow", but that does not
>> necessarily carry the implication that the relationship ends as soon as
>> the clone is done.
>
> You are retracing the exact line of the thinking that led me to a
> cop-out that is a separate "--dissociate".
>
> The original idea was to give "--borrow /local/repository/path", but
> that would have made it unclear what the differences between that
> new option and existing "--reference" were. Both borrow the objects
> in order to reduce the network cost, and the difference is that one
> keeps borrowing while the other one limits the borrowing to strictly
> the initial phase. The two words, "borrow" and "reference", would
> not convey that key distinction. "Do the reference thing (which is
> well understood from old days, even before v1.6.0) and then severe
> the ties" was suboptimal but was easy to explain, and that is why I
> call it a cop-out.
>
>> What is really happening is that we are reusing
>> objects in order to save bandwidth. Maybe "--reuse-from" would work?
>>
>> I dunno. I am not extremely happy with any of the suggestions I made,...
>
> I dunno, either.
>
> We are all on the same page. We know the cop-out is suboptimal, we
> understand why the cop-out is better than "--borrow", and we cannot
> come up with a better name that contrasts with the existing
> "--reference" to make it clear how the new thing is different.
I'll take that as an invitation to brainstorm :-)
--use-objects-from=
--copy-objects-from=
--precopy-objects-from=
--precopy-from=
--donor=
--object-donor=
--steal-from=
--steal-objects-from=
Of these, I think I like "--object-donor" the best.
By the way, once we have stopped thinking about this feature as
"--reference" and then "--dissociate", it becomes obvious that a nice
generalization would be to allow *any* repository (including remote
ones) to serve as the object donor. This would allow users to get most
of their objects from a "nearby" repository (e.g., a mirror on the LAN)
and then top off from a more distant "authoritative" repository.
In fact, this donor/recipient relationship could be made persistent:
before fetching from repository A, always first fetch any objects that
repository B has available. OTOH, making the relationship persistent
would presumably require us to retain remote-tracking references for
repository B even though they are not intrinsically interesting to the
user, and would lead to reference namespace conflicts if the user wants
a "--mirror" clone.
Michael
--
Michael Haggerty
mhagger@alum.mit.edu
next prev parent reply other threads:[~2015-02-24 9:06 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-20 19:10 [PATCH] --disassociate alias for --dissociate clone option Matt Whiteley
2015-02-20 19:10 ` [PATCH 1/2] clone: add disassociate alias to dissociate option Matt Whiteley
2015-02-21 6:27 ` Jeff King
2015-02-21 7:13 ` Junio C Hamano
2015-02-21 7:35 ` Jeff King
2015-02-22 18:32 ` Junio C Hamano
2015-02-24 9:06 ` Michael Haggerty [this message]
2015-02-24 20:06 ` Junio C Hamano
2015-02-24 22:00 ` Michael Haggerty
2015-02-20 19:10 ` [PATCH 2/2] clone: Realign lines near disassociate option Matt Whiteley
2015-02-20 22:01 ` [PATCH] --disassociate alias for --dissociate clone option Eric Sunshine
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54EC3EF8.7040302@alum.mit.edu \
--to=mhagger@alum.mit.edu \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=mattwhiteley@gmail.com \
--cc=peff@peff.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.