在初試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] 尋找Subversion Client工具 (0則留言, 2005/09/01)
- CVS轉Subversion (0則留言, 2005/12/21)
- 我的Subversion與Trac使用經驗 (4則留言, 2008/01/12)
- [SVN] Hook scripts的使用方法 (0則留言, 2005/12/09)
- 用JumpBox輕鬆安裝Subversion+Trac雙系統 (0則留言, 2007/07/25)
- SVNbook繁體中文版復活 (2則留言, 2006/10/29)
- 幾篇值得注意的Subversion相關文章 (0則留言, 2008/08/10)
- [SVN] JavaSVN改名並推出新版本 (0則留言, 2006/11/16)
- 給Ant用的Subversion task (0則留言, 2005/12/26)
- 試用TortoiseSVN 1.4 RC1–更新 (2則留言, 2006/09/06)
- 「勢不可擋」的Subversion (0則留言, 2007/08/18)
- 見微知著:觀《版本控制之道-使用Subversion》有感 (1則留言, 2007/08/19)
- Subversion與Trac合用時的檔案庫Layout考量 (2則留言, 2007/08/19)
- 使用svn://連檔案庫:svnserve.exe (2則留言, 2006/09/10)















這則留言是悄悄話。