RE: [Bug] data loss with cyclic alternates

2014-07-14 Thread Keller, Jacob E
-Original Message- From: Jeff King [mailto:p...@peff.net] Sent: Friday, July 11, 2014 10:57 PM To: Keller, Jacob E Cc: gits...@pobox.com; dr.kh...@gmail.com; git@vger.kernel.org Subject: Re: [Bug] data loss with cyclic alternates On Fri, Jul 11, 2014 at 06:01:46PM +, Keller

Re: [Bug] data loss with cyclic alternates

2014-07-13 Thread Ephrim Khong
Am 11.07.14 18:01, schrieb Junio C Hamano: Ephrim Khong dr.kh...@gmail.com writes: git seems to have issues with alternates when cycles are present (repo A has B/objects as alternates, B has A/objects as alternates). Yeah, don't do that. A thinks eh, the other guy must have it and B thinks

[Bug] data loss with cyclic alternates

2014-07-11 Thread Ephrim Khong
Hi, git seems to have issues with alternates when cycles are present (repo A has B/objects as alternates, B has A/objects as alternates). In such cases, gc and repack might delete objects that are present in only one of the alternates, leading to data loss. I understand that this is no big

Re: [Bug] data loss with cyclic alternates

2014-07-11 Thread Junio C Hamano
Ephrim Khong dr.kh...@gmail.com writes: git seems to have issues with alternates when cycles are present (repo A has B/objects as alternates, B has A/objects as alternates). Yeah, don't do that. A thinks eh, the other guy must have it and B thinks the same. In general, do not prune or gc a

Re: [Bug] data loss with cyclic alternates

2014-07-11 Thread Keller, Jacob E
On Fri, 2014-07-11 at 09:01 -0700, Junio C Hamano wrote: Ephrim Khong dr.kh...@gmail.com writes: git seems to have issues with alternates when cycles are present (repo A has B/objects as alternates, B has A/objects as alternates). Yeah, don't do that. A thinks eh, the other guy must

Re: [Bug] data loss with cyclic alternates

2014-07-11 Thread Jeff King
On Fri, Jul 11, 2014 at 06:01:46PM +, Keller, Jacob E wrote: Yeah, don't do that. A thinks eh, the other guy must have it and B thinks the same. In general, do not prune or gc a repository other repositories borrow from, even if there is no cycle, because the borrowee does not know