From: Andreas Ericsson Date: Fri, 18 Nov 2005 10:18:14 GMT Subject: Re: [PATCH 5/5] git-daemon support for user-relative paths. Message-ID: <437DAA66.6070301@op5.se> In-Reply-To: <7voe4ird8v.fsf@assigned-by-dhcp.cox.net> Junio C Hamano wrote: > exon@op5.se (Andreas Ericsson) writes: > > >>Everything that worked earlier still works insofar as I have >>remembered testing it. > > > Hmph... > :) I haven't used the daemon without our patches. Everything works as per spec now though. > >>@@ -152,45 +140,17 @@ static int set_dir(const char *dir) >> * We want a readable HEAD, usable "objects" directory, and >> * a "git-daemon-export-ok" flag that says that the other side >> * is ok with us doing this. > > > Well, not anymore about HEAD as far as I can tell... Maybe in > enter_repo ([PATCH 1/5]) we need to do something like what > setup.c::is_toplevel_directory() does? > Umm... Perhaps. I just noticed that it's possible for the .git/objects directory to go missing though. > >>-static int upload(char *dir) >>-{ >>- /* Try paths in this order */ >>- static const char *paths[] = { "%s", "%s/.git", "%s.git", "%s.git/.git", NULL }; > > > I think this list was added relatively recently as a usability > measure. Maybe we would want an equivalent in enter_repo()? It's already there but in a different format. Adding "if (!strict)" to the previously unconditional 'chdir(".git");' won't change that. Like I said, I made sure everything that worked before works now too. > Under strict-path, I think not doing any DWIM like this is fine, > but otherwise I suspect changing this would break existing > remotes/origin file people may have. In addition enter_repo() > as posted does its own DWIM to chdir to ".git" unconditionally > as I pointed out... > DWIM? That's an acronym I don't know. > Needs a bit more thought, but I think otherwise the basic idea > is right. > Anything I should change before "take four" ? -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231