threads / discuss / 27296

git alias fails if non-accessible directory is in PATH

Subject: git alias fails if non-accessible directory is in PATH

## tl;dr

3 messages between May 8, 2011 and May 8, 2011.

replies: 2people: 3as markdown or json

Sebastian Schuberth· May 8, 2011, 09:53 UTC · lore
Hi,
I just came across the issue at [1] in my Gentoo installation. By default, it is
drwxr-x--- 2 root games 4096 Mar 12 02:22 /usr/games/bin
Moreover, by default users are not in the "games" group and /usr/games/bin is in PATH. For some reason, this makes git fail to run any alias like this

# git config alias.br branch $ git br fatal: cannot exec 'git-br': Permission denied

Is this by design, or a bug? I currently do not see a reason for git stop executing an alias just because it cannot access a directory in PATH. Strangely, I also haven't found any discussion about this on the mailing list yet.
The problem is also described at [2] for Mac OS. Reading those posts, this seems to be a regression when coming from 1.6.3 to 1.7.0.

[1] http://www.fractionsofapenny.com/from-the-trenches/gentoo-troubles-with-git-alias [2] http://stackoverflow.com/questions/4019501/git-alias-problem

-- 
Sebastian Schuberth
Michael Schubert· May 8, 2011, 16:15 UTC · re: Sebastian Schuberth · lore

Re: git alias fails if non-accessible directory is in PATH

> Is this by design, or a bug? I currently do not see a reason for git stop executing an alias just because it cannot access a directory in PATH. Strangely, I also haven't found any discussion about this on the mailing list yet.

If you look at start_command(), `git br` ends up as execvp call returning EACCESS in the given case whereas only ENOENT was "expected". This happens before git tries to resolve the alias.

Could it be a legit assumption that PATH holds only accessible paths? (POSIX?) Otherwise it's a bug.

Junio C Hamano· May 8, 2011, 16:50 UTC · re: Sebastian Schuberth · lore

Re: git alias fails if non-accessible directory is in PATH

Sebastian Schuberth <sschuberth@gmail.com> writes:
Show 5 quoted lines
> # git config alias.br branch
> $ git br
> fatal: cannot exec 'git-br': Permission denied
>
> Is this by design, or a bug?
The "tangent" part of
    http://thread.gmane.org/gmane.comp.version-control.git/171755
and then the discussion that begins at
    http://thread.gmane.org/gmane.comp.version-control.git/171755/focus=171767
may explain the current list concensus.

← back to recent threads