Re: [RFC] shallow clone
- From
Junio C Hamano <junkio@cox.net>
- Date
- Jan 30, 2006, 19:25 UTC
- Message-ID
- <7v64o18qn4.fsf@assigned-by-dhcp.cox.net>
- In-Reply-To
- <43DDFF5C.30803@hogyros.de>
Simon Richter <Simon.Richter@hogyros.de> writes:
>> - disallow fetching from this repo, and > > Why? It's perfectly acceptable to pull from an incomplete repo, as > long as you don't care about the old history.
I agree. As long as the cloned one can record itself as a shallow one (and with what epochs), I do not see a reason to forbid second generation clone from a shallow repository.
> Hrm, I think there should also be a way to shrink a repo and "forget" > old history occasionally (obviously, use of that feature would be > highly discouraged).
I do not think of a reason to discourage it, and I think you can do the "forgetting" part with the current set of tools. Choose appropriate cauterizing points, set up info/grafts and running "repack -a -d" would be sufficient.
Show 5 quoted lines
> IMO, it may be a lot more robust to just have a list of "cutoff" > object ids in .git/shallow instead of messing with grafts here, as > adding or removing a line from that file is an easier thing to do for > porcelain (or by hand) than rewriting the grafts file. Whether that > list would be inclusive or exclusive would need to be decided still.
I would rather not to have .git/shallow nor .git/shallow_start.
Cauterizing is not any more special than other grafts entries. If you have grafted historical kernel repository behind the official kernel repository with 2.6.12-rc2 epoch, I do not think of any reason to forbid people from cloning such with the grafts.