svn全名為subversion,即版本控制系統,是一個開放原始碼的版本控制系統,透過採用分支管理系統的高效管理,簡而言之就是用於多個人共同開發同一個項目,實現共享資源,實現最終集中式的管理。
SVN的全名是Subversion,即版本控制系統。它是最受歡迎的一個開放原始碼的版本控制系統。作為一個開源的版本控制系統,Subversion管理著隨時間改變的資料。這些資料放置在一個中央資料檔案庫(Repository)中。這個檔案庫很像一個普通的文件伺服器,不過它會記住每個文件的變動。這樣就可以把檔案恢復到舊的版本,或是瀏覽文件的變動歷史。 Subversion是一個通用的系統,可用於管理任何類型的文件,其中包括程式原始碼。
SVN採用客戶端/伺服器體系,專案的各種版本都儲存在伺服器上,程式開發人員首先將從伺服器上取得一份專案的最新版本,並將其複製到本機,然後在此基礎上,每個開發人員可以在自己的客戶端進行獨立的開發工作,並且可以隨時將新程式碼提交給伺服器。當然也可以透過更新操作來取得伺服器上的最新程式碼,從而保持與其他開發者所使用版本的一致性。 [3]
SVN的客戶端有兩類,一類是基於Web的WebSVN等,另一類是以Tortoise SVN為代表的客戶端軟體。前者需要Web伺服器的支持,後者需要用戶在本地安裝客戶端,兩種都有免費的開源軟體可供使用。 SVN儲存版本資料也兩種方式:BDB(一種事務安全型表類型)和FSFS(一種不需要資料庫的儲存系統)。因為BDB方式在伺服器中斷時,有可能鎖住數據,所以還是FSFS方式比較安全一點。
SVN優勢
1.儲存
SVN伺服器既具有CVS所具有資料儲存的優點,像是資訊資源儲存後會形成資源樹狀結構,方便儲存的同時,資料一般不會遺失,同時又有自己的特色。 SVN是透過關聯式資料庫及二進位的儲存方式,同時解決了既往不能同時讀寫相同檔案等問題,同時也增添了自己特有的「零或一」原則。
2.速度
與人們初始的CVS相比,SVN在速度運行方面有很大提升。因為SVN伺服器只支援少量的資訊、資源傳輸,與其他系統相比,更支援的是離線模式,因此避免了網路擁擠現象的出現。
3.安全性
SVN是一種技術性更安全的產品,實現了系統和控制兩方面的結合。一方面可以將系統整體的安全功能有效地分佈在分支系統中,進而確保分支系統能正常運行,從而使各分支系統能夠互補,最終在系統整體性的安全性得以保障,透過均衡原則實現最終追求安全的目的。
以上是svn是什麼工具?的詳細內容。更多資訊請關注PHP中文網其他相關文章!