2009-05-27 1 views
0

훅 :설정 svnperms 사전에 저지 내가 저장소에 svnperms을 구현하기 위해 노력하고있어,하지만 몇 가지 어려움 데

-rwxrwxr-x 1 svnadm  svn   3018 May 27 10:11 pre-commit 

이를 :

사전 커밋

가 실행 권한이에게

,691 : 나는 svnperms.py 지정한 위치에 설치되어있어

# Check that the author of this commit has the rights to perform 
# the commit on the files and directories being modified. 
SVNPERMS=/usr/local/svn/scripts/svnperms.py 
$SVNPERMS -r $REPOS -t $TXN || exit 1 

: 내 svnperms에 내 전화가 사전 저지한다

# ls -l /usr/local/svn/scripts 
total 24 
-rwxrwxr-x 1 svnadm  svn   11840 May 25 07:48 svnperms.py 

svnperms.py는 UNIX 형식이며^M 줄 끝은 없습니다.

TortoiseSVN을 다시 함께 제공 : 없음 paramters와

Command: Commit 
Modified: C:\projects\Sandbox\Trunk\Test.txt 
Sending content: C:\projects\Sandbox\Trunk\Test.txt 
Error: Commit failed (details follow): 
Error: 'pre-commit' hook failed with error output: 
Error: No such file or directory: python 

호출 svnperms 보여줍니다

/usr/local/svn/scripts/svnperms.py 
missing required option(s): repository, either transaction or a revision 
Usage: svnperms.py OPTIONS 

Options: 
    -r PATH Use repository at PATH to check transactions 
    -t TXN  Query transaction TXN for commit information 
    -f PATH Use PATH as configuration file (default is repository 
       path + /conf/svnperms.conf) 
    -s NAME Use section NAME as permission section (default is 
       repository name, extracted from repository path) 
    -R REV  Query revision REV for commit information (for tests) 
    -A AUTHOR Check commit as if AUTHOR had commited it (for tests) 
    -h   Show this message 

유닉스 관리자가 최근에 파이썬을 설치하지만, 모든 종속성이 있는지 확신하지 못했습니다있다. 그게 문제라면, 파이썬이 위의 출력을 기반으로 작동하는 것 같아, 어떻게 결정할 지 모르겠다.

무엇이 누락 되었습니까?

답변

6

내 생각에 바이너리 python의 위치는 svn 서버의 경우 $PATH이 아닙니다.

#!/usr/bin/env python 

을하지만 그 실행 호출자의 $PATH에 있다고 가정합니다 : svnperms.py의 shabang 라인을 읽습니다. Subversion 서버의 런타임 환경을 수정할 수있는 권한이없는 경우 대화 형으로 실행할 때 섀 뱅 줄의 pythonwhich python에 지정된 경로로 바꾸어보십시오.

+0

Dang! 나를 때려. ;-) –

+0

고마워! 그랬어! 메모를 자세히 살펴보면 분명히 스크립트가 $ PATH를 상속받지 않는 것이 일반적인 문제입니다. – jgreep

+1

http://svnbook.red-bean.com/en/1.5/svn.reposadmin.create.html#svn.reposadmin.create.h에 따른 쿡쇼 프로그램은 보안 목적으로 설계된 빈 환경에서 실행됩니다. –