From: Junio C Hamano Date: Thu, 18 May 2006 22:25:29 GMT Subject: Re: [PATCH] [BUG] Add a test to check git-prune does not throw away revs hidden by a graft. Message-ID: <7v64k3nf6u.fsf@assigned-by-dhcp.cox.net> In-Reply-To: Linus Torvalds writes: > On Thu, 18 May 2006, Junio C Hamano wrote: >> >> I haven't looked at what the test does, but I think he is >> talking about the opposite. fsck by design does not honor >> grafts, and if you grafted a history back to your true root >> commit, that "older" history will be lost. > > Ahh. Ok. Gotcha. > > Linus Is it really OK? I said "fsck by design does not honor" as a flamebait. And what I said was completely untrue. Sorry. If you have a commit chain A->B->C and graft B away by saying C's parent is A, fsck does read graft and discards B. But that is what the user asked to do, so I agree with your initial response to Yann. And the opposite case of grafting older history back to the real root commit was a false alarm. You would not lose such a history, because the ancestry traversal will go right through the real root and traverses the older history.