Re: Template files location
Hi, A Large Angry SCM wrote: > Rather than changing the default install location in such a way as to make > half the user unhappy, make everybody (un)happy by removing the default > and forcing it to be specified when make is executed. Lots of stuff installs to /usr/local if not stated otherwise. I don't see why git should be different. Why make *everybody* unhappy if we can avoid it? -- Matthias Urlichs | {M:U} IT Design @ m-u-it.de | [EMAIL PROTECTED] Disclaimer: The quote was selected randomly. Really. | http://smurf.noris.de - - Grain grows best in shit -- U. K. LeGuin - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Template files location
Dear diary, on Fri, Aug 05, 2005 at 07:33:02PM CEST, I got a letter where Junio C Hamano <[EMAIL PROTECTED]> told me that... > *2* And I am sure many others shared the same objection but did > not even bother to say anything because what Johannes said made > a lot of sense and what the patch did was obviously wrong. Me too, actually. I just didn't step out to see the big picture when writing the grandparent. Now I agree with everything you said. -- Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ If you want the holes in your knowledge showing up try teaching someone. -- Alan Cox - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Template files location
Junio C Hamano wrote: ... If the template files are to become something that always have to exist, /etc first and then falling back on /usr/share would make a lot of sense. But as Johannes Schindelin correctly argued against the "Use the template mechanism to set up refs/ hierarchy as well." patch [*2*], I think git-init-db should work when there is no template directory. In other words, its primary purpose is to help local project administrators ensure newly created repositories have hooks and probably info/exclude that they recommend to the project members. So templates are project specific. The reason to have a sample one shipped as part of the core package is just to help newbies --- they would get a boilerplate hooks/update that explains how they can set it up when they do git-init-db even when they do not have their own customized set of templates yet. For this kind of use, I do not think one default falling back to another is needed. Shipping samples with the plumbing makes sense, especially when the documentation in is insufficient. But installing the samples as part of the default install process seems less than desirable. Or, alternately, install the samples in with the documentation as (non-executable) examples. ... *1* This would probably break Linus, myself and others --- everybody has to say "make prefix=$HOME", so I do not think I am actually going to do it any time soon, if ever. Having prefix=/usr/local as default only helps people who are installing system-wide from the source, and nobody else. People who are writing spec.in and/or debian/rules need to override it to prefix=/usr anyway, and it forces people who are installing to their home to say prefix=$HOME/. I suspect it is an inertia from the good old days when nobody used binary distributions. Rather than changing the default install location in such a way as to make half the user unhappy, make everybody (un)happy by removing the default and forcing it to be specified when make is executed. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Template files location
Petr Baudis <[EMAIL PROTECTED]> writes: > Any reason why that's not the default destination then? Inertia, installing things under $HOME, is why it is not the default. It may be that the project is mature enough that it is time to move away from default installation in HOME, IOW to change the Makefile to say prefix=/usr/local (or prefix=/usr) to match practices of other projects [*1*]. > Or you can try /etc/git-core/ and fall back to /usr/share/git-core :-) If the template files are to become something that always have to exist, /etc first and then falling back on /usr/share would make a lot of sense. But as Johannes Schindelin correctly argued against the "Use the template mechanism to set up refs/ hierarchy as well." patch [*2*], I think git-init-db should work when there is no template directory. In other words, its primary purpose is to help local project administrators ensure newly created repositories have hooks and probably info/exclude that they recommend to the project members. The reason to have a sample one shipped as part of the core package is just to help newbies --- they would get a boilerplate hooks/update that explains how they can set it up when they do git-init-db even when they do not have their own customized set of templates yet. For this kind of use, I do not think one default falling back to another is needed. Come to think of it, GIT_TEMPLATE_DIRECTORY environment variable does not make _ANY_ sense; I am an idiot. It is used only by git-init-db and the reason to have it is to override the default. It should become the command line parameter of it. I'll fix up this breakage soonish. [Footnote] *1* This would probably break Linus, myself and others --- everybody has to say "make prefix=$HOME", so I do not think I am actually going to do it any time soon, if ever. Having prefix=/usr/local as default only helps people who are installing system-wide from the source, and nobody else. People who are writing spec.in and/or debian/rules need to override it to prefix=/usr anyway, and it forces people who are installing to their home to say prefix=$HOME/. I suspect it is an inertia from the good old days when nobody used binary distributions. *2* And I am sure many others shared the same objection but did not even bother to say anything because what Johannes said made a lot of sense and what the patch did was obviously wrong. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Template files location
Dear diary, on Fri, Aug 05, 2005 at 06:37:11AM CEST, I got a letter where Junio C Hamano <[EMAIL PROTECTED]> told me that... > We install files in $(HOME)/etc/git-core/templates/ directory. > > In the standard binary distribution scheme, it should probably > go to either /usr/share or /etc; the former if the distribution > prefers static boilerplate files in /usr/share, latter if we > consider them site-specific conffiles. I just discussed this > privately with a Debian person on the list today, and we are in > favor of installing it under /usr/share/git-core/templates, > because we do not expect the contents of the standard templates > directory will not be a per-site customization [*1*]. > > In any case, this means that the make drivers like spec.in and > debian/rules would need to override some make variables when > they invoke the main Makefile. Any reason why that's not the default destination then? Or you can try /etc/git-core/ and fall back to /usr/share/git-core :-) -- Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ If you want the holes in your knowledge showing up try teaching someone. -- Alan Cox - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html