svn透過採用分支管理系統的高效管理;簡而言之就是用於多個人共同開發同一個項目,實現共享資源,實現最終集中式的管理。 svn是一個開放原始碼的版本控制系統,它採用客戶端/伺服器體系,專案的各種版本都儲存在伺服器上;SVN的客戶端有兩類,一類是基於Web的WebSVN,另一類是以Tortoise SVN為代表的客戶端軟體。
本教學操作環境:windows7系統、Subversion 1.14版、Dell G3電腦。
SVN是subversion的縮寫,是一個開放原始碼的版本控制系統,透過採用分支管理系統的高效管理,簡而言之就是用於多個人共同開發同一個項目,實現共享資源,實現最終集中式的管理。
SVN採用客戶端/伺服器體系,專案的各種版本都儲存在伺服器上,程式開發人員首先將從伺服器上取得一份專案的最新版本,並將其複製到本機,然後在此基礎上,每個開發人員可以在自己的客戶端進行獨立的開發工作,並且可以隨時將新程式碼提交給伺服器。當然也可以透過更新操作來取得伺服器上的最新程式碼,從而保持與其他開發者所使用版本的一致性。 [3]
SVN的客戶端有兩類,一類是基於Web的WebSVN等,另一類是以Tortoise SVN為代表的客戶端軟體。前者需要Web伺服器的支持,後者需要用戶在本地安裝客戶端,兩種都有免費的開源軟體可供使用。 SVN儲存版本資料也兩種方式:BDB(一種事務安全型表類型)和FSFS(一種不需要資料庫的儲存系統)。因為BDB方式在伺服器中斷時,有可能鎖住數據,所以還是FSFS方式比較安全一點。
svn的特性
統一的版本號碼。 CVS是對每個檔案順序編排版本號,在某一時間各檔案的版本號各不相同。而Subversion下,任何一次提交都會對所有檔案增加到同一個新版本號,即使是提交並不涉及的檔案。所以,各檔案在某任意時間的版本號碼是相同的。版本號相同的檔案構成軟體的一個版本。
原子提交。一次提交不管是單一還是多個檔案,都是作為一個整體提交的。在這當中發生的意外例如傳輸中斷,不會造成資料庫的不完整和資料損壞。
重新命名、複製、刪除檔案等動作都儲存在版本歷史記錄當中。
對於二進位檔案,使用了節省空間的儲存方法(簡單的理解,就是只儲存和上一個版本不同之處)。
目錄也有版本歷史。整個目錄樹可以被移動或複製,操作很簡單,而且能夠保留全部版本記錄。
分支的開銷非常小。
優化過的資料庫訪問,使得一些操作不必訪問資料庫就可以做到。這樣減少了許多不必要的和資料庫主機之間的網路流量。
支援元資料(Metadata)管理。每個目錄或檔案都可以定義屬性(Property),它是一些隱藏的鍵值對,使用者可以自訂屬性內容,而且屬性和檔案內容一樣在版本控制範圍內。
支援FSFS和Berkeley DB兩種資料庫格式。
(學習影片分享:程式設計基礎影片)
以上是svn透過採用什麼的高效管理的詳細內容。更多資訊請關注PHP中文網其他相關文章!