SVN
SVN是Subversion的簡稱,是一個開放源代碼的版本控制系統,相較于RCS、CVS,它采用了分支管理系統,它的設計目標就是取代CVS。互聯網上很多版本控制服務已從CVS遷移到Subversion。說得簡單一點SVN就是用于多個人共同開發同一個項目,共用資源的目的。
工作流程
集中式管理的工作流程如下圖:
集中式代碼管理的核心是服務器,所有開發者在開始新一天的工作之前必須從服務器獲取代碼,然后開發,最后解決沖突,提交。所有的版本信息都放在服務器上。如果脫離了服務器,開發者基本上可以說是無法工作的。下面舉例說明:
開始新一天的工作:
工作圖
1、從服務器下載項目組最新代碼。
2、進入自己的分支,進行工作,每隔一個小時向服務器自己的分支提交一次代碼(很多人都有這個習慣。因為有時候自己對代碼改來改去,最后又想還原到前一個小時的版本,或者看看前一個小時自己修改了哪些代碼,就需要這樣做了)。
3、下班時間快到了,把自己的分支合并到服務器主分支上,一天的工作完成,并反映給服務器。
這就是經典的svn工作流程,從流程上看,有不少缺點,但也有優點。
具體操作
我們在使用SVN之前需要在下載一個客戶端Cornerstone。
一、創建SVNChina賬號 http://www.svnchina.com
屏幕快照 2017-02-20 14.57.00.png
登陸成功
創建項目
創建項目
添加小組成員
兩個地址,通常用第一個
添加庫
添加庫
選擇Discard Change
會看到左邊有個這么東西,選中 點擊Check Out
檢出,也就是在桌面上下載服務器上的文件
桌面就會出現一個文件夾
我現在給qweqweqw這個文件夾里面放置了一份工程,然后可以看到
Cornerstone會看到你放置的工程
點擊Commit
點擊圈里面的
開始提交
提交成功后小組成員點擊Update
這就是簡單的提交和拉取,當有人改動后,就Commit,然后其他就Update,但是切記一點,不要去修改同一個文件,否則的的話會造成沖突,什么叫沖突,大家想想,我在第9行寫了行代碼,你也在第9行寫了代碼,那么系統不像人可以輕松識別,它畢竟是機器,無法識別哪個是要的,哪個是不要的,所以當兩個人修改同一處,并且一方已經提交,一方正在Update就會出現沖突。下面我將帶著大家去解決沖突"Conflicts"
C
C
刪掉特殊符號,留下你想留下來的即可,然后保存重新Commit即可
好了,這就是Cornerstone的使用了,也不是很難,也沒有邏輯,完全就是純操作,熟能生巧,建議大家還是多去用用,因為團隊項目離不開這些代碼管理器。
以上內容僅供學習參考,如需轉載,請提前告知。