From: Roy Lee Date: Thu, 26 Feb 2009 13:01:34 GMT Subject: Re: Does cloning a shallow repo require special setting in the cloned one? Message-ID: <6eac7f470902260501v6d826af7rbc5afd1df7b214a3@mail.gmail.com> In-Reply-To: <20090226104657.GB4226@coredump.intra.peff.net> On Thu, Feb 26, 2009 at 6:46 PM, Jeff King wrote: > On Thu, Feb 26, 2009 at 08:34:51AM +0200, Teemu Likonen wrote: > >> On 2009-02-25 19:49 (-0800), roylee17 wrote: >> >> > $ git clone --depth 1 git-full git-shallow2 >> > 'git log' still gives a full history >> > >> > Why can't I clone a shallow repo from the git-full? >> > Does it requires some settings in the git-full repo? >> >> I don't know the "why" part but using file:// URL should work: >> >>     git clone --depth 1 file:///path/to/git-full git-shallow2 > > I don't think the behavior is intentional, but a side effect of the > fact that git takes some shortcuts when cloning locally. In particular, > it will try to copy or hardlink the object database rather than > transmitting over the git protocol locally. Using file:// has always > been the way to suppress that shortcut. > > Perhaps to avoid surprise, that optimization should be turned off for > options which cause it to behave differently (like --depth). But I have > to wonder what the point of --depth is locally; if you are worried about > space, hardlinks (the default) or alternates ("clone -s") are a better > solution. > > -Peff > Actully, the original intention was to find a quick way to checkout and build several projects regularly. The first thing came to me was cloning shallow repos for saving some time. So I tried it with my local repo first. Later, one of my co-works suggested me to try git archive, and that did reallly fit my needs. Thanks for clarifying my confusion. Roy