The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何將 Visual SourceSafe 資料庫轉到 Subversion

這是我之前用 Visual SourceSafe 時覺得很難用,將 VSS 轉到 Subversion 過程的筆記。雖然可以轉成功,但是 VSS 中的 Log Message 中文部分都會變成亂碼,這應該是無解,不過至少可以把所有原始碼版本移過來,加減用吧!還沒轉到 Subversion 的還是建議趕快轉,用 Visual SourceSafe 真的會瘋掉!

  1. 下載 vss2svn
  2. 解壓縮 "ssphys.exe" 與 "vss2svn.exe" 出來
  3. 執行 "vss2svn.pl -vssdir D:\Will\VSSDatabase"
  4. 你將會取得 vss2svn-dumpfile.txt 檔

    Will備註:由於 Subversion 是用 UTF-8 做為儲存的字碼。但透過 "ssphys.exe" 倒出來的資料檔卻是 Big5 (因為在Traditional Chinese環境執行),再由 vss2svn.pl 轉出來的 dumpfile 卻是從 ISO-8859-1 轉為 UTF-8 的 dumpfile!!! 所以所有的中文字碼都亂掉了!!最底下有我的解決方案。
  5. 到 Subversion 建立一個資料庫(Reository)

    svnadmin create VSSDatabaseSVN
  6. 將版本庫匯入

    svnadmin load VSSDatabaseSVN < vss2svn-dumpfile-utf8.txt

步驟4做完後請用我寫的 c.php (1.65 kb) 這支 PHP 程式轉換 dumpfile !

轉換的指令是:

    php -q c.php > vss2svn-dumpfile-utf8.txt