2009-05-21 127 views
5

我目前在仍然有VSS 2005的環境中工作。我目前沒有權力改變爲Subversion,TFS等。如何使用Visual Source Safe 2005?

什麼是VSS 2005要注意的主要問題 - 我怎樣才能最好地使用它來試圖保存我的版本,而不是炸燬我的源代碼?例如,將它與Visual Studio 2008集成還是使用VSS客戶端更好?

回答

10

不要做與VSS相關的任何事情。我認爲許多從未遇到過VSS問題的人只是將它作爲文件共享使用(即文件一次簽入,永遠不會修改) - 諷刺地使用VSS作爲普通文件備份實際上增加了災難性丟失的可能性!

VSS淹沒在一堆措辭不佳的問題中。每個問題都沒有一個單一的答案,你將不得不停下來思考每一個問題。從VSS斷開連接時,會不斷詢問您是否要切換到在IIS上使用VSS,如果這樣做,將不明顯如何撤消它。

請勿使用VSS插件獲取初始項目或簽出項目。 VSS插件往往會將您的文件放在意想不到的地方,請使用VSS客戶端,這更有可能爲您提供反映VSS中項目結構的文件夾結構。

不要使用功能中的構建來分支,不要合併。創建一個新的VSS項目(即新的文件夾集),並在需要分支時檢入代碼,就好像它是一個全新的事物。如果您需要模擬合併,請使用無法比較的功能。

不要重命名文件,而是添加新的,複製粘貼,然後刪除。這打破了歷史鏈,但有更少的加重

允許多個結帳,但非正式地不要讓太多的工作在相同的代碼區域完成,不要讓其他開發人員讓他們的版本過於陳舊,因爲那麼你試圖合併你的舊工作文件夾版本和最新版本,而VSS往往會淹沒初級開發人員的問題,他們不明白。

不要做非常大的檢查。不要使用沒有第三方產品的慢速網絡連接。

如果您在Visual Studio中使用VSS插件,請定期使用VSS客戶端來比較和同步您的工作文件夾,但這樣做是逐個文件,而不是批量處理。

不要讓存儲庫變得太大。將不相關的工作分開存儲庫。

不要被登錄密碼欺騙。 VSS不比文件夾上的NTFS權限更安全。

當開發人員離開公司時,要求他們撤消他們的結賬。使用相同的計算機和用戶憑據以及工作文件夾來撤銷簽出的次數比使用管理員帳戶撤消其他人的簽出容易更輕鬆。

任何源代碼管理系統的所有最佳實踐也適用,例如,檢查二進制文件的連續版本爲binaryfile.bin,而不是binaryfilev1.bin,binaryfilev2.bin,但確實告訴VSS .bin或您的意思是二進制文件,或者它會嘗試進行文本合併。

3

我一直沒有嘗試將VSS與VS集成,所以我建議不要這樣做。然而,我們當時正在處理ASP.Net 1.1項目,這些項目沒有能夠以任何形式存在於任何文件夾結構中的任何地方,這主要是我們遇到問題的地方 - 嘗試同步項目結構與VSS存儲庫。

除此之外,我只能建議您不要通過VPN連接檢查代碼,這種連接很容易丟失。事實上......我會建議從不遠程檢查代碼;)如果連接在提交過程中下降,則可以減少數據庫是否損壞。

3

我最後一次嘗試它(很久以前),Visual Studio集成在使用VSS項目分支時表現不佳。

我只是使用VSS客戶端。

其他建議:

  • 運行VSS管理「分析」定期(檢測/修復數據庫中的任何損壞)
  • 做出修改並測試數據庫的定期(如夜間)備份,使用'陰影'功能,以防萬一數據庫變得無法修復
+0

你有什麼問題?我已經將VS與VSS集成了很多年,並且從未注意到集成的任何主要問題? – mundeep 2009-05-22 00:48:36

+0

我認爲問題在於,當你分支一個項目時(這意味着對同一個文件有不同的修訂版本),那麼Visual-Studio-to-VSS映射不會被改變的文件,也就是說複製到新的分支中......這樣Visual Studio就可以繼續使用主流而不是你希望使用的分支。這是很久以前,雖然如此YMMV。 – ChrisW 2009-05-22 01:03:17

8

如何使用Visual Source Safe 2005?

酒精。它的負載。

3

使用自動作業運行隱形SVN存儲庫,每天晚上檢查最新的VSS文件並將其檢入SVN。

當VSS死亡(它會)告訴老闆我們有第二個存儲庫準備好去。

相關問題