我在Windows上安裝了Collabnet Subversion Edge v3.3.1。我已經啓用了基本的訪問限制,但這並沒有給我的靈活性,做到以下幾點:1。 放棄文件/文件夾被用戶刪除 2.使用通配符在一個倉庫中指定的文件級權限svnperms.py在帶有Collabnet Subversion Edge的windows上不起作用
因此,我Google搜索並找到了svnperms.py來滿足我的要求。我遵循互聯網上的指示,並配置了svnperms.py來限制訪問。
我的pre-commit鉤子看起來如下:
set REPOS=%1
set TXN=%2
REM "C:\csvn\Python25\python.exe" "C:\csvn\data\repositories\repos\hooks\svnperms.py" -r "%repos%" -t "%txn%" - f "C:\csvn\data\repositories\repos\hooks\svnperms.conf"
"C:\csvn\Python25\python.exe" "C:\csvn\data\repositories\repos\hooks\svnperms.py" - f "C:\csvn\data\repositories\repos\hooks\svnperms.conf" -r "%REPOS%" -t "%TXN%"||exit 1;
exit 0;
我的配置文件看起來像
[groups]
group1 = sowmya.dass
group2 = m.b
[repos]
a/.* = @group1(update)
a/.* = @group2(delete)
我試圖通過使用戶M.B刪除其下的文件夾中的文件存儲庫中的測試此。由於用戶可以訪問他應該能夠做到這一點,但隨後當他試圖提交我得到下面的錯誤:
命令:提交
刪除C:\ m_ws_edge \ A \的pom.xml
錯誤:提交失敗(細節如下):
錯誤:提交阻斷pre-commit鉤子(退出代碼1)輸出:
錯誤:svnlook的作者C:\ csvn \數據\庫\回購-t 5-C
錯誤:'{'不被識別爲內部或外部命令,
錯誤:可操作的程序或批處理file.error:命令失敗:svnlook作者
錯誤:C:\ csvn \ data \ repositories \ repos -t 5 -c
錯誤:'{'未被識別爲內部或外部命令,
錯誤:可操作的程序或批處理文件。
已完成!:
當任何用戶嘗試執行任何操作(無論用戶是否具有訪問權限)時都會出現相同的錯誤。
我看了一篇早期文章How to control changes to tags in SVN server on Windows討論了類似的問題。但該解決方案不適合我的要求。而且它還提到了svnperms.py不能在windows上工作,這是由於底層svnlook命令只適用於unix。我也碰巧看到互聯網上提到類似問題的其他帖子,但我找不到任何解決方案讓svnperms.py在Windows上工作。
任何人可以幫助我: 1.修正上面的錯誤,並獲得在Windows和/或 2.替代解決方案svnperms.py工作,以適應能夠放棄用戶我的上述要求刪除的文件/文件夾並能夠在基於文件的訪問限制中使用通配符。
謝謝!
問候
Sowmya達斯