All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Duy Nguyen <pclouds@gmail.com>
Cc: Michal Pomorski <misieck@gmail.com>,
	Git Mailing List <git@vger.kernel.org>
Subject: Re: git clone --depth: shallow clone problems
Date: Fri, 29 May 2015 08:52:05 -0700	[thread overview]
Message-ID: <xmqqiobbe5zu.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <CACsJy8AO7UNF-SnuqohOPDy2dOvfg=bA+b0rdVihabxBLAz19Q@mail.gmail.com> (Duy Nguyen's message of "Fri, 29 May 2015 18:04:31 +0700")

Duy Nguyen <pclouds@gmail.com> writes:

> On Tue, May 26, 2015 at 9:54 PM, Junio C Hamano <gitster@pobox.com> wrote:
>> Duy Nguyen <pclouds@gmail.com> writes:
>>
>>>  --unshallow::
>>> -     If the source repository is complete, convert a shallow
>>> -     repository to a complete one, removing all the limitations
>>> +     If the source repository is complete, convert all shallow
>>> +     refs to complete ones, removing all the limitations
>>
>> Define "shallow ref", or better yet explain without introducing such
>> a new term (I do not think shallow-ness is a property of a ref, by
>> the way---I think you meant all refs that can reach the points the
>> history is cauterised by .git/shallow, but we shouldn't assume that
>> the target audience of this paragraph to know Git as well as I do).
>
> OK maybe
>
> Make sure all existing refs have the same history as the ones from the
> source repository. If the source repository is complete, this removes
> all limitations imposed by shallow repositories.

OK, I can understand that description a lot easier than the original
one.

>>> ++
>>> +Note that if the repository is created with --single-branch, which is
>>> +default for a shallow clone, only one ref is completed. `--unshallow`
>>> +does not fetch all remaining refs from source repository.
>>
>> I do not think this "Note" is being as helpful as it could be.
>>
>>  - If the repository was created with --single-branch but if the
>>    user later fetched and started tracking other branches, the
>>    statement "only one ref is completed" is untrue; the true version
>>    is "only the existing refs are completed", which leads to a more
>>    important point.  It says the same thing as "all existing refs"
>>    above and does not add any useful information.
>>
>>  - The last sentence is less than useful but merely frustrating---it
>>    says what you cannot do with this option, strongly hints that the
>>    writer of the sentence knows what the reader wants to achieve,
>>    but without saying what other way the reader go to achieve it.
>>
>> Perhaps replace that Note paragraph with something along this line?
>>
>>     +
>>     By fetching and tracking refs that you haven't been tracking,
>>     you can add these new refs to "all refs" to be unshallowed.
>
> It was meant to emphasize --unshallow would not create a true clone,
> if people miss the keywords "all existing" refs.. Maybe..

I know; it is not helpful to describe what it does *NOT* do, without
saying what the reader is likely trying to find out.

> You may need to fetch and track other refs from the source repository
> if you want to make full clone.

That is much better.

      reply	other threads:[~2015-05-29 15:52 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-23 14:53 git clone --depth: shallow clone problems Michal Pomorski
2015-05-26 12:47 ` Duy Nguyen
2015-05-26 14:54   ` Junio C Hamano
2015-05-29 11:04     ` Duy Nguyen
2015-05-29 15:52       ` Junio C Hamano [this message]

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=xmqqiobbe5zu.fsf@gitster.dls.corp.google.com \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=misieck@gmail.com \
    --cc=pclouds@gmail.com \
    /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.