svnpermsを設定し、プリコミットフック
-
06-09-2019 - |
質問
私はリポジトリにsvnpermsを実装しようとしているが、いくつかのことの難しさを持っています:
前のコミット実行権限を持っています
-rwxrwxr-x 1 svnadm svn 3018 May 27 10:11 pre-commit
このは、事前にコミット内svnpermsに私の呼び出しです。
# 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.py持っています
# 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はして戻ってくるます:
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
UNIX管理者は、最近のpythonをインストールしたのですが、すべての依存関係があるかどうかわからなかったしました。それが問題だ場合のpythonは、上記の出力に基づいて動作しているようだから、私は、それを決定するかどうかはわかりません。
私は何をしないのですか?
解決
私の推測では、python
バイナリの場所は、SVNサーバ用$PATH
ではないということです。 svnperms.py
のshabangラインは読みます:
#!/usr/bin/env python
しかし、それは実行ファイルは、発信者の$PATH
にあることを前提としています。あなたはSubversionサーバの実行環境を変更する権限を持っていない場合は、対話的にそれを実行したときにpython
によって与えられたパスでshabangラインでwhich python
を交換してみます。
所属していません StackOverflow