天天看點

SVN鈎子 之 pre-commit

源碼下載下傳

        我用的是Windows版本的SVN:VisualSVN Server Manager服務端 + TortoiseSVN用戶端。

        pre-commit鈎子可以防止版本送出時不寫log資訊的懶惰行為,pre-commit鈎子檔案放在版本庫\hooks目錄下,在Windows系統中,檔案名可以是pre-commit.bat或者pre-commit.exe。批處理方式網上有很多實作的例子,但我找不到有人用exe形式的,于是花了點時間進行編碼(其中設計了管道和重定向的知識,可以參考我的另一偏文章“管道(pipe)”)。源碼可以在開頭連結下載下傳到。

        另外,如果是批處理方式,VisualSVN Server Manager提供了一個便捷的菜單可以直接編輯,打開VisualSVN Server Manager,右擊版本庫,選擇“所有任務” > "Manage hooks...",在彈出的對話框中選擇Hooks頁籤,輕按兩下pre-commit hook,即可進行編輯,如下圖所示:

SVN鈎子 之 pre-commit
SVN鈎子 之 pre-commit
SVN鈎子 之 pre-commit

        另外補充一點, TortoiseSVN用戶端本身還有另外一種方法來設定送出時日志的長度限制,就是檔案夾屬性

tsvn:logminsize。