Re: Mercurial 0.4b vs git patchbomb benchmark
- From
Linus Torvalds <torvalds@osdl.org>
- Date
- May 2, 2005, 16:31 UTC
- Message-ID
- <Pine.LNX.4.58.0505020921080.3594@ppc970.osdl.org>
- In-Reply-To
- <42764C0C.8030604@tmr.com>
On Mon, 2 May 2005, Bill Davidsen wrote:
> > -#!/usr/bin/python > > +#!/usr/bin/env python
> Could you explain why this is necessary or desirable? I looked at what > env does, and I am missing the point of duplicating bash normal > behaviour regarding definition of per-process environment entries.
It's not about environment.
It's about the fact that many people have things like python in /usr/local/bin/python, because they compiled it themselves or similar.
Pretty much the only path you can _really_ depend on for #! stuff is /bin/sh.
Any system that doesn't have /bin/sh is so fucked up that it's not worth worrying about. Anything else can be in /bin, /usr/bin or /usr/local/bin (and sometimes other strange places).
That said, I think the /usr/bin/env trick is stupid too. It may be more portable for various Linux distributions, but if you want _true_ portability, you use /bin/sh, and you do something like
#!/bin/sh exec perl perlscript.pl "$@"
instead. Linus