orbrey
Hi there, Which line from the commit-access-control.pl script is line 78? It sounds like it's having problems running a command on that line, rather than running the script itself.
orbrey
Is that the whole line? It's hard to tell because it's getting wrapped by the forum. If you could attach the whole file (with any sensitive information edited out) that'd be easier, or wrap the line in code tags from the formatting bar when you post it, it'll stay as it is in the file?
orbrey
Possibly, the reason I mention line 78 is because that is the line referenced by the error message - so something on that specific line failed. Unfortunately I can't see from your quotes which is line 78 so can't really help further. As I said above though, if you could quote the full line in CODE tags that will paste it without wrapping, or even better if you could attach the whole file it'd be easier. EDIT: Is the error message referencing two separate files there? I can see it mentions pre-commit but also commit-access-control.pl? The line 78 seems to be from pre-commit, and commit-access-control may not have executable permissions going by what you've posted.
orbrey
Ah! There we go. Your error is happening because pre-commit is trying to call commit-access-control.pl but either a) whatever user is running the pre-commit doesn't have permissions to run it, or b) commit-access-control.pl doesn't have executable permissions set. Those are the two things that spring to mind instantly, anyway. Hope one of them turns out to be the issue and sorts it for you, if not let us know and we'll see what further advice we can offer. EDIT: Hmm. Realise I'm repeating myself and asking you to try things you've tried already, sorry about that. Ah - on reading again, the check that the commit-access-control.pl is performing is to ensure your user (the one you're committing as) has permission to commit to the given directory - might be an error, but could that be the case? That you're committing to a directory you don't have permission to commit to? If it's not that, might be worth a look at commit-access-control to see what it's checking for and make sure that exists. Or, just comment out that line from pre-commit if you don't need it.
orbrey
The process runs as the apache user, yes, but it uses apache login credentials (depending on how you've set it up) to determine what the permissions the user connecting to git has - unless everyone connects as the same user, which I doubt would be apache/www-data? That's the user permissions I mean - commit-access-control.pl is a script to check that the connecting user has permissions to access or modify the repository and it looks very much like it's rejecting access for you. You could comment out that check in the script if you wish (or comment out the call to commit-access-control.pl in the pre-commit script) just to check if that is what's happening? If it is, you'll either need to leave that script out, edit it to allow you access or check your user's permissions (the ones associated with the account you log in to the server as) in the repositories I suspect.