[英]Visual SVN Server Post-commit Hook Fails
我想在提交發生時將存儲庫的最新文件簽出到服務器本地硬盤驅動器上的文件夾中。
我的post-commit掛鈎現在是:
svn checkout https://xyz.mysite.com:7405/svn/ProjectName/ C:\my-temp --non-interactive --no-auth-cache --username myusername --password mypassword
VisualSVN Server創建的.CMD文件在Windows的命令提示符中運行很好,並完成了我需要它做的事情。 但是當提交發生時運行它時,錯誤會返回到SVN客戶端,並且目標文件夾中不會出現任何內容。
錯誤消息顯示Access to /svn/ProjectName forbidden
即使憑據在Commpand Prompt中完美運行。
請讓我知道我需要對腳本執行什么操作才能運行。 謝謝!
您是否在服務器上啟用了集成Windows身份驗證 (即Active Directory單點登錄)? 在這種情況下, - --username
和--password
參數將不起作用,因為從鈎子腳本調用時, svn.exe
將在運行VisualSVN Server HTTP服務的用戶帳戶下進行身份驗證。
有幾種方法可以擺脫身份驗證問題:
如果您在網絡服務下運行該服務(默認情況下HTTP服務在此帳戶下運行),請為AD 計算機帳戶提供對/svn/ProjectName/
讀取權限。 網絡服務帳戶在網絡上的計算機帳戶憑據下工作。
對file://
URL運行svn checkout
。 這樣,客戶端直接在文件系統上訪問存儲庫,無需特殊身份驗證。 URL應該看起來像file:///C:\\Repositories\\MyProject
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.