From: Junio C Hamano Date: Thu, 26 Jul 2012 17:46:01 GMT Subject: Re: [PATCH 1/3] retain reflogs for deleted refs Message-ID: <7vehny8lgm.fsf@alter.siamese.dyndns.org> In-Reply-To: <20120720170913.GA14057@sigill.intra.peff.net> Jeff King writes: > On Fri, Jul 20, 2012 at 06:37:02PM +0200, Johannes Sixt wrote: > >> Am 20.07.2012 17:44, schrieb Jeff King: >> > So I think a suffix like ":d" is probably the least horrible. >> >> Not so. It does not work on Windows :-( in the expected way. Trying to >> open a file with a colon-separated suffix either opens a resource fork >> on NTFS or fails with "invalid path". > > Bleh. It seems that we did too good a job in coming up with a list of > disallowed ref characters; they really are things you don't want in your > filenames at all. :) Why do no need to even worry about ~ vs : vs whatever in the first place? With a flag-day per repository "core.repositoryformatversion = 1", you do not have to worry about mixture of old-style refs and new ones, so refs/heads/next-d/log could be a topic branch 'next/log' that is based on an integration branch 'next' branch that physically resides at refs/heads/next-f or an entry refs/heads/next in packed refs. Only the API functions in refs.c should care, no?