VSS
VSS
的全稱為 Visual Source Safe 。作為 Microsoft Visual Studio
的一名成員,它主要任務(wù)就是負(fù)責(zé)項(xiàng)目文件的管理,幾乎可以適用任何軟件項(xiàng)目。管理軟件開發(fā)中各個(gè)不同版本的源代碼和文檔,占用空間小并且方便各個(gè)版本代碼和文檔的獲取,對(duì)開發(fā)小組中對(duì)源代碼的訪問進(jìn)行有效的協(xié)調(diào)
VSS作為一款歷史悠久的版本管理工具,在早期扛起了版本管理系統(tǒng)方面的大氣,能幫助解決一部分版本控制方面的問題,也在一定程度上幫助解決代碼共享方面的難題。但是依舊存在一些不足,比如:
1.文件大多會(huì)以獨(dú)占的形勢(shì)進(jìn)行鎖定。如果一個(gè)人在修改的時(shí)候其他人沒有辦法進(jìn)行修改。
2.VSS只支持Windows版本,且只兼容微軟的開發(fā)工具。
3.文件存儲(chǔ),服務(wù)器必須共享文件夾,對(duì)文件的安全性沒有足夠保障。
SVN
SVN
SVN是Subversion的簡(jiǎn)稱,是一個(gè)開放源代碼的版本控制系統(tǒng),相較于RCS、CVS,它采用了分支管理系統(tǒng),它的設(shè)計(jì)目標(biāo)就是取代CVS。互聯(lián)網(wǎng)上很多版本控制服務(wù)已從CVS遷移到Subversion。說得簡(jiǎn)單一點(diǎn)SVN就是用于多個(gè)人共同開發(fā)同一個(gè)項(xiàng)目,共用資源的目的。
這是百度百科中給出的SVN的解釋。SVN是一個(gè)開源的版本控制系統(tǒng)。和VSS相比,除開最基本的代碼和文件管理功能外,主要的革新是提供了分支的功能,從而解決了VSS文件獨(dú)占的問題。大幅提升了開發(fā)人員的工作效率,誰寫完代碼,隨時(shí)可以提交到自己的分支上,最后對(duì)所有分支進(jìn)行合并,解決沖突即可。相比VSS而言,在工作模式上有了翻天覆地的改變。
而SVN作為集中式的版本管理系統(tǒng),依然有他的優(yōu)缺點(diǎn):
優(yōu)點(diǎn):
1.管理方便,邏輯明確,操作簡(jiǎn)單,上手快。
2.易于管理,集中式服務(wù)器更能保證安全性。
3.代碼一致性非常高。
4.有良好的目錄級(jí)權(quán)限控制系統(tǒng)。
·劣勢(shì)
1.對(duì)服務(wù)器性能要求高,數(shù)據(jù)庫容量經(jīng)常暴增,體量大。
2.必須聯(lián)網(wǎng)。如果不能連接到服務(wù)器上,基本上不可以工作,如果服務(wù)器不能連接上,就不能提交,還原,對(duì)比等等。
3.不適合開源開發(fā)。
4.分支的管控方式不靈活
Git
請(qǐng)點(diǎn)擊此處輸入圖片描Git是一款免費(fèi)、開源的分布式版本控制系統(tǒng),用于敏捷高效地處理任何或小或大的項(xiàng)目。作為一個(gè)開源的分布式版本控制系統(tǒng),可以有效、高速的處理從很小到非常大的項(xiàng)目版本管理。
分布式相比于集中式的最大區(qū)別在于開發(fā)者可以提交到本地,每個(gè)開發(fā)者通過克隆(git clone),在本地機(jī)器上拷貝一個(gè)完整的Git倉庫。
Git的優(yōu)缺點(diǎn)如下:
1.適合分布式開發(fā),每一個(gè)個(gè)體都可以作為服務(wù)器。每一次Clone就是從服務(wù)器上pull到了所有的內(nèi)容,包括版本信息。
2.公共服務(wù)器壓力和數(shù)據(jù)量都不會(huì)太大。
3.速度快、靈活,分支之間可以任意切換。
4.任意兩個(gè)開發(fā)者之間可以很容易的解決沖突,并且單機(jī)上就可以進(jìn)行分支合并。
5.離線工作,不影響本地代碼編寫,等有網(wǎng)絡(luò)連接以后可以再上傳代碼,并且在本地可以根據(jù)不同的需要,本地新建自己的分支。