應用Microsoft Visual SourceSafe組織軟件開發項目

發表于:2008-02-02來源:作者:點擊數: 標簽:項目VSSvss
摘要 專業的軟件開發需要對在開發過程中每一應用程序的源代碼修改的管理進行流水線處理。Microsoft_ Visual SourceSafe?記錄了系統、項目和文件級修改的歷史記錄,允許你 安全 的在多個 程序員 之間分配開發工作,跟蹤修改信息,并恢復個別文件或整個應用程序
摘要
  專業的軟件開發需要對在開發過程中每一應用程序的源代碼修改的管理進行流水線處理。Microsoft_ Visual SourceSafe?記錄了系統、項目和文件級修改的歷史記錄,允許你安全的在多個程序員之間分配開發工作,跟蹤修改信息,并恢復個別文件或整個應用程序的早期版本。
簡介
  代碼是寶貴的資源。為了保護它,很多開發者應用一些版本控制系統以保護文件避免未授權的修改和意外的錯誤。這些系統有很多種,從有關程序注釋的更改和存儲舊版本的君子協定到自動跟蹤修改和歷史記錄的復雜的軟件系統都有。
  大多數來源控制系統對于單獨的源文件是有效的。但是,它們幾乎全部不能在文件間建立關系。這在Microsoft Windows的環境中將引起問題,因為在該環境中,一個應用程序可以包含多個可執行文件和由許多不同的源文件建立的動態連接庫,它們有可能在很多其它應用程序中重復使用。當今,管理源文件間的關系和保護源文件的內容本身同樣重要。
  Microsoft Visual SourceSafe 版本控制軟件通過將項目管理的任務和源代碼的控制結合起來,解決了這個問題。以注重在管理源文件的同時管理項目,Visual SourceSafe提供了對該問題的優秀的解決方案,是用標準的、面向文件的來源控制系統不易實現的。
軟件開發流水線
  為了理解面向項目的來源控制的優點,僅需將它和面向文件的系統進行一下比較。一個標準的版本控制系統(例如,UNIX工具RCS)必然是一組用于操作獨立的文件、控制文件訪問和更新并與早期版本比較的工具的集合。為了操作一組文件,你需要編寫一個批文件或在命令行指定通配符。
  Microsoft Visual SourceSafe將文件存儲在網絡的中心數據庫中,而不是在一個普通的DOS目錄中。在系統級,該數據庫表現為一個“黑盒”。但是,當以Visual SourceSafe為視圖時,可以看到該數據庫中包含了你的組織到項目分層結構中的所有源文件和歷史記錄。
  當你檢索一個文件時,Visual SourceSafe將在數據庫中標記該文件為簽出,然后允許你在你的機器上對該文件進行修改。當你將該文件放回時,Visual SourceSafe更新它的數據庫并重新修改你的機器對文件的訪問權限為只讀。
  然而,這和面向文件的來源控制有什么不同呢?
  對于每一個改變,Visual SourceSafe數據庫記錄并追蹤那些對于面向文件的系統不可用的項目信息。每當文件被加入,修改,共享,移動,或從項目中刪除,Visual SourceSafe將同時更新文件和項目的歷史記錄。你可以應用項目歷史記錄來簡化這些工作:
  在連編前瀏覽指定項目及其全部子項目中所有文件的狀態。 ? 縮小那些由于在某一日期聯編可能引起錯誤的指定文件的改變信息。
  重新生成所有應用程序的前一版本。
  維護被許多不同應用程序共享的源文件。
  確定哪一個項目將由于改變被多個不同應用程序共享的文件而受到影響。
  管理通用應用程序的特定客戶版本。
  對于軟件開發人員來說,試圖通過面向文件的系統來完成這些工作,將是令人難以忍受的瑣碎且無益的。正如下述的方案所闡述的那樣,Visual SourceSafe面向項目的版本控制通過直接進行這些工作,將開發過程流水線化了。
為連編做準備
  假定你將連編一個包含了很多獨立的部件的主應用程序。在你開始連編之前,你希望確認沒有人在最后的時刻修改代碼,并且在版本控制過程中,整個系統沒有文件被簽出。
  一個標準的版本控制系統提供給你一個確定文件是否簽出的工具。你的工作是對將用來連編的每一個目錄中的每一個文件運行該工具。盡管引入批處理文件和通配符將使任務簡單些,但面對一個復雜的系統時,仍然是非常繁瑣的。
  正如其它系統一樣,Visual SourceSafe可以確定一個文件是否被簽出。但它還可以創建一個高層的報告:一個項目中所有簽出文件的列表。這一特性應用在當前項目中循環包含所有子項目時功能尤其強大。Visual SourceSafe檢查每個相關項目中的每一個文件并生成簽出文件的列表。你可以立即知道是否可以進行連編(或如果你不能時該找誰)。僅需在項目文件中執行一個命令,Visual SourceSafe就可以自動完成以前冗長的需手工完成的工作。
精確回歸
  包括Visual SourceSafe在內的所有版本控制系統都有文件歷史記錄報告。文件歷史記錄報告中列出了從最新的到最舊的每一個文件版本,包含諸如對文件進行了什么操作,誰做的,什么時候完成的和進行了什么備注說明等信息。
  盡管文件歷史記錄非常有用,但它們也有一些缺陷。例如,假定一個特性在上個星期還可以正常工作,但在這個星期連編你的應用程序時出了問題。顯然,最近有人引入了這個錯誤,但是在哪一個文件中呢?
  在標準的版本控制系統中解決這個問題,你需要為一個象是有錯誤的文件生成一個歷史記錄報告,看是否它最近被修改過,并瀏覽修改情況。如果你沒有找到錯誤,你就要選取另一個文件進行檢查,如此類推。你可能用這種方法查遍了系統中的所有文件但沒有找到關鍵的修改──因為事實上這個修改是增加或刪除文件,而標準的版本控制系統根本不追蹤這樣的操作!
  在Visual SourceSafe中,你通過項目本身生成報告。例如,它可能報告COMMON.BAS剛被修改;在此之前,OPENALL.FRM被修改過;此前,FILESUPP.BAS被增加到項目中;諸如此類。Visual SourceSafe整理這些否則你將手工完成檢索的修改信息,允許你瀏覽上個星期的全部修改的順序。這將節省你很多的時間并幫助你避免陷入困境。
重新創建前一項目版本
  通過檢索項目的歷史記錄,Visual SourceSafe允許你快速重新創建整個應用程序的前一版本。這將幫助你解決在前一版本中報告的錯誤,并確認它們在當前開發的新版本中已解決。
  例如,假定一個用戶報告應用程序版本2.03中有一個打印問題。應用程序的該版本可能包含一個文件版本為10,另一個文件版本為15,諸如此類;但你不必擔心這些。從Visual SourceSafe中請求一個指定的項目版本,你便可以還原一個完全的、用于連編2.03版本的應用程序源文件的本地的副本。
  若應用標準的版本控制系統完成這些工作,你或者必須將應用程序的每一個發行版本的來源獨立存檔或者需對每一個版本搜索指定的文件。這兩種方法中,為前一次連編恢復正確的源文件都是一件煩人的手工的過程─ 一項可能被取消或推遲的工作。
維護可重用代碼
  大多數應用程序是在一個公共的核心代碼的基礎上開發的。這些文件在很多不同的應用程序中一次又一次的被使用并隨著時間不斷完善,得到錯誤修復,性能提高,和新的特性。應用現存的代碼的好處是巨大的,但在處理組織問題時仍然是件另人頭疼的事。你必須記住文件被哪些應用程序使用,并將每一個修改信息傳送到所有恰當的地方。當有五個應用程序重用一個文件時,這還只是小麻煩,當有二十個應用程序混合在一起并與五十個不同的重用文件相配時,麻煩就大了。
  一個標準的版本控制系統在這個問題上根本幫不上忙,因為一個源文件可同時存在于多個不同的項目中。但Visual SourceSafe可以自動完成這一切。在它的數據庫中,Visual SourceSafe對每一個文件只存儲一次。每個項目文件包含了一個擁有指向數據庫中文件位置的指針的文件。對于每一個項目,所有版本的文件都是可用的;同時一個項目可以“凍結”一個文件的版本,以避免當其它開發工作組在可重用代碼上工作時引入錯誤。
  舉一個普遍的例子,假定你有一個包含了多個不同打印報告進程的源文件。在Visual SourceSafe中,每個需要打印報告的應用程序均需要共享該文件。如果你發現了一個錯誤,你可以從任何一個項目中更新文件─這一改變信息將立即傳送到每一個共享該文件的項目中。Visual SourceSafe可以報告哪些項目共享了該文件,于是你就知道哪些應用程序受到了影響并需要重新連編。
創建特定用戶版本
  另一個普遍的來源控制問題是關于用戶的,他們期望定制應用程序以滿足他們特定的需要。本來,你有很多不同的應用程序,他們共享幾乎全部的相同的源文件。應用標準來源控制工具,追蹤錯誤并保持連編的連續性的時間將比編程所花費的時間還多。應用Visual SourceSafe,你為每個新用戶創建一個項目,指明哪些文件是共享的和哪些文件是獨享的。當你在一個項目中工作時,對于特定用戶的改變信息將保留在當前的項目中,而對于共享文件的修改將傳送到所有用戶版本。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97