如何將 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

  

此文章由 will 發表於 2008/1/3 上午 12:01:00

永久連結 | 評論 (6) | 此文章的RSSRSS comment feed |

分類: Subversion

標籤: , ,

評論

二月 19. 2009 13:59

vincent

請問版大,vs2005改用svn,一個方案中,如果有不同project&website,要怎麼管理比較方便,要對不同目錄分開管理嗎?

vincent 美國

二月 19. 2009 14:04

will

看你阿,我基本上是一個「專案」開一個 SVN Repository,一個專案只是「整個專案」,不是一個 Visual Studio 的 Project 喔。

will 台灣

五月 6. 2009 14:30

Feiyun Wang

It looks like the attached c.php handles only Chinese filenames, but leaves the VSS check in comments unchanged.

Feiyun Wang 中華人民共和國

五月 6. 2009 14:40

will

Yes.  It's really hard to handle comments because it's really hard to distinguish between check-in comments and file contents.

will 台灣

五月 6. 2009 15:28

Feiyun Wang

The latest nightly build vss2svn supports --encoding option, and I managed to convert my VSS DB in cp936 to a SVN repository:
http://www.pumacode.org/download/vss2svn/nightly/
vss2svn-nightly-20080430.zip

Feiyun Wang 中華人民共和國

五月 6. 2009 17:34

will

Thanks.  However, I don't have the needs anymore.  Since 2 years ago, we don't use vss anymore.

will 台灣

新增評論


( 您輸入的Email不會顯示於網站上 )

  Country flag

biuquote
  • 評論
  • 線上預覽
Loading