From: Bagas Sanjaya <bagasdotme@gmail.com>
To: Derrick Stolee <stolee@gmail.com>, Git Users <git@vger.kernel.org>
Subject: Re: Fetching single tag in shallow clone almost unshallow the clone
Date: Fri, 28 May 2021 19:46:44 +0700 [thread overview]
Message-ID: <524c529d-e2f3-3432-55c5-cb05fe8ecf02@gmail.com> (raw)
In-Reply-To: <d641512e-657f-6dfc-adf4-1b1889439553@gmail.com>
Hi,
> You should add a --depth here, too. Git doesn't remember that you want
> a certain depth, because that doesn't work in perpetuity.
>
OK. I can specify --depth that I want, but often I forget how deep my
clone when fetching tag with --depth, so that it has the same depth as
before fetching tag. What should I do?
> You are hitting the issue I documented in my comparison between partial
> and shallow clones [1]: The commit history for go1.16.1 goes "around"
> your shallow boundary. See the image immediately above the "Comparing
> Clone Options" section.
>
> [1] https://github.blog/2020-12-21-get-up-to-speed-with-partial-clone-and-shallow-clone/#user-content-shallow-clones
So basically when I request fetching something out of shallow boundary,
Git "unshallow" by fetching the whole remaining history (but not implies
--unshallow).
I found out that shallow clones perform on repos that have linear
history policy (that is no merge commits). For example, on linear
history repo, deepening shallow clone with `git fetch --deepen <n>`
deepens the shallow boundary by <n> commits, whereas on repo with merge
commits, doing the same may drastically zig-zag number of commits on the
clone (at one instance can be more commits, at the other can be fewer).
--
An old man doll... just what I always wanted! - Clara
prev parent reply other threads:[~2021-05-28 12:46 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-28 7:03 Fetching single tag in shallow clone almost unshallow the clone Bagas Sanjaya
2021-05-28 11:40 ` Derrick Stolee
2021-05-28 12:46 ` Bagas Sanjaya [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=524c529d-e2f3-3432-55c5-cb05fe8ecf02@gmail.com \
--to=bagasdotme@gmail.com \
--cc=git@vger.kernel.org \
--cc=stolee@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).