Fetching single tag in shallow clone almost unshallow the clone

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

 



Hi,

I have a copy of Golang repository [1] on my local Git server on my computer. I'm experimenting with fetching single tags in shallow
clone.

I begin with shallow clone the repo:

$ git clone https://<myhost>/path/to/go.git --depth 200 golang
$ cd golang

Because only one, default branch (master) is checked out on shallow clone, I fetch latest release branch shallowly:

$ git remote set-branches --add origin release-branch.go1.16
$ git fetch origin release-branch.go1.16 --depth 25

Then I fetch single tag only, that is latest tagged release:

$ git fetch origin tag go1.16.4 --no-tags
From https://<myhost>/path/to/go
 * [new tag]           go1.16.4   -> go1.16.4

That above worked, because the commit the tag refers to is already on the clone.

But when I fetch a single tag which the commit the tag refers to isn't already on the clone, Git fetched almost the entire history (thus almost unshallow the clone):

$ git fetch origin tag go1.16.1 --no-tags
remote: Enumerating objects: 436644, done.
remote: Counting objects: 100% (427655/427655), done.
remote: Compressing objects: 100% (75334/75334), done.
remote: Total 419698 (delta 343975), reused 416121 (delta 341201), pack-reused 0
Receiving objects: 100% (419698/419698), 146.94 MiB | 16.06 MiB/s, done.
Resolving deltas: 100% (343975/343975), completed with 4892 local objects.
From https://gitnode.io/bagas/go
 * [new tag]           go1.16.1   -> go1.16.1

I expect that instead Git will deepen the shallow clone until the specified tag.

Note that I used "almost unshallow" phrase, because although almost the whole history had been fetched, `.git/shallow` still exists, meant that the clone was still shallow. To convert to full clone, I did `git fetch --unshallow`, which also fetched tags referenced on either master or already configured released branches.

Thanks.

[1]: https://github.com/golang/go
--
An old man doll... just what I always wanted! - Clara



[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