From: Johannes Schindelin Date: Thu, 31 Jan 2008 11:12:31 GMT Subject: Re: [PATCH] gitweb: Use config file or file for repository owner's name. Message-ID: In-Reply-To: Hi, On Wed, 30 Jan 2008, Jakub Narebski wrote: > Junio C Hamano writes: > > > Junio C Hamano writes: > > > >> Bruno Cesar Ribas writes: > >> ... > >>> Opening the extra file has same problem as the description file. > >>> And, as gitweb allow us to create "description" and "cloneurl" file > >>> there is no problem having another file to open instead finding out > >>> who is the owner of the directory asking to the filesystem. > >> > >> We heard the same argument when cloneurl was added, and a newcomer > >> who does not know that may rightly use the same argument. But I > >> think we should work towards _reducing_ the number of such ad-hoc > >> one-line-per-information files, not using existing ones as an excuse > >> to add _more_ of them. > > > > Rephrasing to be constructive (but remember, this is all post 1.5.4). > > > > * we would need for historical reasons to keep supporting > > description and cloneurl for some time. There may be some > > others, but the goal should be to deprecate and remove these > > ad-hoc one-file-per-piece-of-information files. > > > > * we also need for historical reasons to keep supporting some > > other stuff found in $git_dir/config of the project. > > > > If the config reading interface in gitweb is reasonably fast and > > cheap, we can move the existing description/cloneurl to gitweb config > > when deprecating them. New ones such as "owner" would naturally fit > > there. > > Currently gitweb parses repo config file _once_, using one call to > git-config -z -l. > > We could simply add description to the projects_list file, but it will > be a bit backwards incompatibile change. Not if you say "the config overrides the description/cloneurl file", i.e. when there is a description or a cloneurl from the config, don't even bother to stat the single-line files. That would help transition, and still be backwards compatible. (BTW this resembles what we did for the .git/remotes/* -> .git/config transition.) Ciao, Dscho