设置svnperms预提交h

2024-10-01 07:31:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将svnperms实现到存储库中,但在以下几点上遇到了困难:

预提交具有执行权限:

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

这是我在预提交中对svnperms的调用:

^{pr2}$

我有服务条款.py安装在指定位置:

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

在服务条款.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似乎是基于上面的输出工作的。在

我错过了什么?在


Tags: pathpyforuserepositoryassvnerror
1条回答
网友
1楼 · 发布于 2024-10-01 07:31:20

我的猜测是python二进制文件的位置不在svn服务器的$PATH中。svnperms.py的shabang行是:

#!/usr/bin/env python

但这假设可执行文件位于调用者的$PATH。如果您没有权限修改subversion服务器的运行时环境,请尝试在交互式运行shabang行时用which python指定的路径替换shabang行中的python。在

相关问题 更多 >