版本控制:即記錄乙個或若干檔案內容變化,以便將來查閱特定版本修訂情況以及回溯的系統。subversion的特點:
1.每個版本庫有唯一的url(官方位址),每個使用者都從這個位址獲取**和資料;
2.獲取**的更新,也只能連線到這個唯一的版本庫,同步以取得最新資料;
3.提交必須有網路連線(非本地版本庫);
4.提交需要授權,如果沒有許可權,提交會失敗;
5.提交並非每次都能夠成功。如果有其他人先於你提交,會提示「改動基於過時的版本,先更新再提交」;
6衝突解決是乙個提交速度的競賽:手快者,先提交,平安無事;手慢者,後提交,可能衝突.(建議每次提交前update);
git ,開源的分布式版本控制系統,是 linus torvalds 為了幫助管理 linux 核心開發而開發的乙個開放原始碼的版本控制軟體。分布式相比於集中式的最大區別在於開發者可以提交到本地,每個開發者通過轉殖(git clone),在本地機器上拷貝乙個完整的git倉庫。
git的特點:
1.git中每個轉殖(clone)的版本庫都是平等的。你可以從任何乙個版本庫的轉殖來建立屬於你自己的版本庫,同時你的版本庫也可以作為源提供給他人。
2.git的每一次提取操作,實際上都是一次對**倉庫的完整備份。提交完全在本地完成,無須別人給你授權,你的版本庫你作主,並且提交總是會成功。
3.甚至基於舊版本的改動也可以成功提交,提交會基於舊的版本建立乙個新的分支。
4.git的提交不會被打斷,直到你的工作完全滿意了,push給他人或者他人pull你的版本庫,合併會發生在pull和push過程中,不能自動解決的衝突會提示您手工完成。
5.衝突解決不再像是svn一樣的提交競賽,而是在需要的時候才進行合併和衝突解決。
svn優點:
1、 管理方便,邏輯明確,符合一般人思維習慣。
2、 易於管理,集中式伺服器更能保證安全性。
3、 **一致性非常高。
4、 適合開發人數不多的專案開發。
缺點:1、 伺服器壓力太大,資料庫容量暴增。
2、 如果不能連線到伺服器上,基本上不可以工作,看上面第二步,如果伺服器不能連線上,就不能提交,還原,對比等等。
3、 不適合開源開發(開發人數非常非常多)。但是一般集中式管理的有非常明確的許可權管理機制(例如分支訪問限制),可以實現分層管理,從而很好的解決開發人數眾多的問題。
git優點:
1、適合分布式開發,強調個體。
2、公共伺服器壓力和資料量都不會太大。
3、速度快、靈活。
4、任意兩個開發者之間可以很容易的解決衝突。
5、離線工作。
缺點:1、學習週期相對而言比較長。
2、不符合常規思維。
3、**保密性差,一旦開發者把整個庫轉殖下來就可以完全公開所有**和版本資訊。
工具沒有好壞,只有適不適合;集中式在傳統的企業團隊開發裡優勢明顯(推廣成本,安全性),而分布式面向開源專案,或者工作機制比較自由的團隊,個人。
版本控制工具(SVN與Git)
在工作及專案開發中,接觸到了兩種版本控制工具 git和svn,兩者沒有孰優孰好,在不同的應用場景有著各自的優勢。兩者的部分差異在於 總體來說在實際應用中,git適用於各類開源 的版本控制管理 本身就是為linux核心的版本控制而生 而svn適用於含有大量二進位制檔案的各類專案整體的版本控制管理 老牌...
版本控制Git與SVN
可以協同 管理,讓多人開發 得以實現。回歸到以前的任何乙個時間點的 處 好比 開始寫了很多 後面有修改了一些,突然ide崩潰,但是發現還是以前的 更好,這個時候無法回去,這個時候沒有後悔藥吃,但是可以使用版本備份,但是即花費空間和花費時間 由於上面的版本備份造成版本眾多,難於找到正確的版本 svn有...
版本控制工具 SVN
學習svn的 svn入門使用 伺服器 tigris svn 客戶端 tortoise svn 伺服器的搭建 tigris svn server 1.6.5 2 建立中心庫 svnadmin create d share svnrepo 3 修改許可權配置 修改conf svnserve.conf 檔...