在工作中一直是使用svn進行項目的版本控制的,有時候由於提交匆忙,或是忘了添加Log,或是Log內容寫的有錯誤。今日遇到此類情況,想要在查看項目的日志時添加log或是修改log內容,遇到如下錯誤:
Repository has not been enabled to accept revision propchanges;
ask the administrator to create a pre-revprop-change hook
顯然此情況是svn服務端設置的問題,版本在提交后不允許修改log。需要在服務端添加一個hook來允許log的修改。我用的服務器是Windows下的VisualSVN Server,
在庫的屬性頁面的Hooks選項卡下找到Pre-revision property change hook(參考圖1),雙擊修改其內容。如果找不到hooks文件夾 可以按照下面步驟操作
第一步:在服務端的程序啟動欄里打開VisualSVN Server
第二步:右鍵單擊local找到屬性
第三步:找到存儲位置
第四步:找到hooks文件夾,再找到pre-revprop.change.tmpl,右鍵編輯修改成如下
SET REPOS="%1" SET REV="%2" SET USER="%3" SET PROPNAME="%4" SET ACTION="%5" IF %ACTION% == "M" (IF %PROPNAME% == "svn:log" (EXIT 0)) ECHO "Changing revision properties %PROPNAME% is prohibited" >&2 EXIT 1
然后另存為pre-revprop.change.bat批處理文件 如下圖,雙擊運行,此時即可到客戶端進行日志修改