Re: Git gc removes all packs
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Feb 18, 2015, 07:13 UTC
- Message-ID
- <xmqqoaor4rr2.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <54E3BE8B.2040403@alum.mit.edu>
Michael Haggerty <mhagger@alum.mit.edu> writes:
Show 22 quoted lines
> On 02/17/2015 10:57 PM, Junio C Hamano wrote: > ... >> Do you mean that we would end up reading refs/heads/hold if the user >> did this: >> >> git rev-parse --verify HEAD -- >precious >> ln -s ../../../precious .git/refs/heads/hold >> >> because that symbolic link does not begin with "refs/", > > Correct, you can do exactly that. The "hold" reference is resolvable and > listable using "for-each-ref". But if I try to update it, the contents > of the "precious" file are overwritten. On the other hand, if I run > "pack-refs", then the current value of the "hold" reference is moved to > "packed-refs" and the symlink is removed. This behavior is not sane. > >> and is an >> accident waiting to happen so we should forbid it in the longer >> term and warning when we see it would be the first step? > > Yes, I am proposing that approach, though if somebody can suggest a use > case I'm willing to be convinced otherwise.
Thanks. I agree the proposed tightening is probably harmless, but I too would want to see if somebody comes up with a valid use case. I do not think of anything offhand.