SVN2CL: 自動產生變動紀錄的腳本–修改

處於高度緊張期的開發階段專案無時無刻都有許多新增、修改、刪除等變動,若每次都要用TortoiseSVN檢視記錄,委實需要浪費許多時間,因此找了能產生變動紀錄(ChangeLog)的程式來將這部份自動化。我試了下列兩個都是Open source的腳本程式:

  1. svn2log:使用Python撰寫,雖然其首頁上聲稱Windows也可以執行,但安裝了最新版的Python 2.4.3,仍然出現找不到xml.utils的錯誤,弄了許久仍無法解決,寫信給作者也未接獲回覆,最後只好放棄了
  2. svn2cl:原先以為只適用於Linux環境,後來發現已經有人將之移植到Windows環境了:svn2cl-win,Shell script被改寫成了VBScript(svn2cl.vbs)。最終便是採用了這個小工具來產生Change log。

以下是幾個簡單的操作紀要:

  1. 要執行的電腦裡必須安裝SVN Client,並且修改PATH使之能讀到svn.exe
  2. 執行svn2cl.vbs的指令是cscript.exe或wscript.exe,預設的PATH裡都能直接執行得到
  3. 顯示選項:cscript svn2cl.vbs --help
  4. 執行語法:cscript svn2cl.vbs SVN檔案庫的URL 選項
  5. 範例:cscript svn2cl.vbs http://mySVNserver.com/svn/trunk/myProject --group-by-day -i --html
  6. 加入--html選項便能產生成HTML格式,預設使用的編碼是UTF-8,因此必須先修改做為網頁樣本的svn2html.xsl,將utf-8換成Big5
  7. -i指定把Subversion的版本號碼也產生出來
  8. 產生出的ChangeLog.html若要拷貝到別的網站供連結,svn2html.css樣式檔必須一起拷貝,網頁樣式才會正確

產生的範例,首先是文字格式( cscript svn2cl.vbs http://localhost:8080/svn -i --group-by-day ):

ChangeLog.txt
2006-08-06 jerry

* [r52] demo/新增文字文件.txt: 商品資料維護。
* [r51] demo/demo1.txt: 222
* [r50] demo/demo1.txt: test
* [r49] demo/新增文字文件.txt: test

2006-07-24 jerry

* [r48] demo/1E.xml: commit.
* [r47] demo/1E.xml: commit.
* [r46] demo/1E.xml: 商品資料維護。

接著是網頁格式( cscript svn2cl.vbs http://localhost:8080/svn -i --group-by-day --html ):
看不到圖請連http://blog.xuite.net/emisjerry/tech
2006/09/10 修改:

svnformatter: Java版本 http://sourceforge.net/projects/svnformat/



用法:

java -jar svnformat.jar -url http://.../svn/trunk/xxx -user userID -pass password


##

您可能也會有興趣的類似文章

簡睿

服務於軟體業的資訊老兵。興趣廣泛,學習力佳,樂於分享所知所學。

您可能也會喜歡…

3 個回應

  1. 簡睿表示:

    到subversion.tigris.org下載Subversion的client就可以了subversion Win32 之類的

  2. matt表示:

    請教一下,我的 SVN Client 是 TortoistSVN 不過我找不到有哪個執行檔可以做這件事情哩?

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *