版本控制是一種軟件工程技巧,借此能在軟件開(kāi)發(fā)過(guò)程中,確保由不同人所編輯的同一代碼文件都能得到同步。
問(wèn)題:① 團(tuán)隊(duì)開(kāi)發(fā) ② 異地協(xié)作 ③ 版本回退
一、為什么需要版本控制
1.讓版本庫(kù)中任意文件恢復(fù)到任意歷史版本
2.追溯任意代碼修改歷史

二、常用的版本控制軟件
git版本控制軟件(主流):基于分布式進(jìn)行架構(gòu)的,主要應(yīng)用于Linux平臺(tái);
svn版本控制軟件(主流):基于服務(wù)器端進(jìn)行架構(gòu)的,主要應(yīng)用于Windows或Linux平臺(tái);
cvs版本控制軟件:最早期比較成熟的產(chǎn)品,開(kāi)源奇葩產(chǎn)品;
vss版本控制軟件:Visual Source Safe,入門級(jí)產(chǎn)品,操作簡(jiǎn)單,具有可視化界面;
clearcase版本控制軟件:IBM負(fù)責(zé)管理與維護(hù),中堅(jiān)級(jí)產(chǎn)品,但是其并不是開(kāi)源免費(fèi)的,而是收費(fèi)軟件,價(jià)格昂貴,但是其有良好的技術(shù)支持。
三、SVN版本控制軟件
SVN 是Apache Subversion 的縮寫,是一個(gè)開(kāi)放源代碼的版本控制系統(tǒng),Subversion 目前是 Apache 軟件基金會(huì)的一個(gè)免費(fèi)的通用系統(tǒng),可以管理任何類型的文件集,包括源代碼。是解決團(tuán)隊(duì)開(kāi)發(fā)帶來(lái)的文檔備份、代碼版本控制、代碼沖突等問(wèn)題的一款優(yōu)秀的軟件。
官網(wǎng)地址
SVN 源碼
svn是近年來(lái)崛起的版本管理工具,是cvs的接班人。目前,絕大多數(shù)開(kāi)源軟件都使用svn作為代碼版本管理軟件。(bae、淘寶code、開(kāi)源社區(qū))
SVN軟件屬于C/S結(jié)構(gòu)軟件,所以在使用時(shí)必須安裝服務(wù)器端與客戶端。
四、常用概念與操作指令
Repository(源代碼庫(kù)):源代碼統(tǒng)一存放的地方
Checkout(提?。?當(dāng)你手上沒(méi)有源代碼的時(shí)候,你需要從repository checkout一份
Commit(提交):當(dāng)你新增或者修改了代碼,你就需要Commit到repository
Update (更新):當(dāng)你已經(jīng)Checkout了一份源代碼, Update一下你就可以和Repository上的源代碼同步,你手上的代碼就會(huì)有最新的變更
Confict(沖突):如果兩個(gè)程序員同時(shí)修改了同一個(gè)文件,如果不是同一行,SVN都會(huì)自動(dòng)合并,操作上先update后commit。如果是同一行,SVN會(huì)提示文件Confict, 沖突,需要手動(dòng)確認(rèn)。
? 新增 add
? 提交commit
? 查看操作日志 show log,回退版本
? 文件比較 diff 、 diff with previous version
五、Subeclipse插件
Help--> install new software -->add:
Name : subeclipse
Location : http://subclipse.tigris.org/update_1.10.x
六、設(shè)置忽略文件

具體可以參考博客:[轉(zhuǎn)]SVN-版本控制軟件