在初試TortoiseSVN的收穫這篇裡提及,可以在Subversion的工作複本(Working copy)資料夾裡,設定與Bug Tracking System整合的性質(Property),
如bugtraq:url、bugtraq:message、bugtraq:number、bugtraq:append等,一般是在工作複本最上層,
以檔案總管→內容→Subversion頁籤裡來設定,並勾選「遞迴」使上層的性質同步存到子目錄裡。但如果每個不同的專案都要依樣重複這個設定一次,那
可就有點累人了,因此今天試著寫一支批次檔,以方便能重覆執行。
首先遇到了用來填入Bug號碼的識別字
%BUGID%,其中的百分號是Windows
shell的環境變數擴展字元,例如%WINDIR%擴展後的是C:Windows,或C:WINNT,為了不讓%BUGID%擴展,因此必須找
到其Escape字元,以抑制其擴展的動作。查了半天,Shell的Escape字元是^符號,在DOS裡執行OK(^%BUGID^%→%BUGID
%),但放在批次檔裡卻又整個變成一個 ^ 符號。最後終於確認在批次檔裡用兩個百分號就可以解決了。
接著,由於bugtraq:message裡使用到中文,被轉換成 ?數字 的格式,即使設定了iconv的變數也無法正常,最後只好放棄而改用英文。
以下是我的範例:
| svnprop.bat |
| set APR_ICONV_PATH=d:svn-win32-1.2.3iconv
svn propset bugtraq:url "http://your.track.com/printItem.do?key=%%BUGID%%" . -R svn propset bugtraq:append "true" . -R svn propset bugtraq:number "true" . -R svn propset bugtraq:message "Issue Number: [%%BUGID%%]" . -R svn propset bugtraq:warnifnoissue "true" . -R |
- bugtraq:append=true表示Bug號碼插入於紀錄訊息的最末端
- bugtraq:number=true表示Bug號碼是數值型態
- bugtraq:message 是Bug號碼的表示字串
- bugtraq:warnifnoissue=true表示Commit時若未輸入Bug號碼則顯示警告視窗,但確定後仍可Commit
##
您可能也會有興趣的類似文章
- 初試TortoiseSVN的收穫 (4則留言, 2005/09/16)
- [Subversion] Keywords擴展設定 (2則留言, 2005/09/03)
- 給Ant用的Subversion task (0則留言, 2005/12/26)
- [Subversion] 修改舊版次的訊息與作者名稱 (0則留言, 2006/07/08)
- CVS轉Subversion (0則留言, 2005/12/21)
- 升級Subversion client版本與VisualSVN Server (8則留言, 2008/11/22)
- [SVN] Hook scripts的使用方法 (0則留言, 2005/12/09)
- Subversion的Apache設定 (0則留言, 2007/07/15)
- 使用svn://連檔案庫:svnserve.exe (2則留言, 2006/09/10)
- Subversion權限設定範例說明 (0則留言, 2009/09/09)
- [Subversion] 檔案庫的儲存格式比較 (0則留言, 2005/10/11)
- 我的Subversion與Trac使用經驗 (4則留言, 2008/01/12)
- Subversion與Trac合用時的檔案庫Layout考量 (2則留言, 2007/08/19)
- Java-based Subversion client登入AD的帳號問題 (0則留言, 2007/08/24)
- NetBeans的Subversion設定的最後一個步驟 (0則留言, 2006/02/03)















這則留言是悄悄話。