SVN全稱:Subversion,是一個開放源代碼的版本控制系統服務器
Svn是一種集中式文件版本管理系統。集中式代碼管理的核心是服務器,全部開發者在開始新一天的工做以前必須從服務器獲取代碼,而後開發,最後解決衝突,提交。markdown
集中式文件版本控制器:將全部的文件都交由服務器來進行統一的管理。既然是有服務器的,那麼就須要聯網進行操做了。svn
咱們寫一個項目通常都是一個團隊來寫,若是咱們沒有用SVN的話,那麼咱們只能在團隊中互相拷貝對方的代碼來完成咱們的項目。學習
SVN還有以下的好處:spa
在SVN中有配置庫這麼一個概念,那它是什麼東東呢??開放源代碼
它儲存全部的數據,配置庫按照文件樹形式儲存數據命令行
任意數量的客戶端能夠鏈接到配置庫,讀寫這些文件.而且能夠添加讀寫日誌,有權限的用戶很方便的看到這些修改版本控制
咱們從上面已經知道了,咱們能夠從配置庫中獲得想要的文件。那麼咱們要把文件從配置庫下載下來。這個下載下來的區域就是工做副本。日誌
這個工做副本其實就是咱們工做的區域,咱們對那些文件修改完,就可以再次提交到配置庫中了。code
咱們簡單來學習幾條SVN的命令,SVN有圖形界面的功能,所以命令學習也不是必須的。瞭解一下….
---建立服務器端版本庫 svnadmin create 版本庫路徑 ---啓動SVN服務器端 svnserve -d -r 版本庫路徑 ---在系統服務中註冊svn服務器 sc create svn binPath= "C:\Program Files\TortoiseSVN\bin\svnserve.exe --service -r D:\itcast\svnserver\20150118svn" DisplayName= "svn服務" ---刪除系統服務中的 服務 sc delete 服務ID
若是啓動SVN服務器的時候,不會報錯就是正常開啓了。
在咱們配置庫中找到conf文件夾下的svnserve.conf配置文件。將下面的三行的註釋去掉
找到conf文件下的passwd,配置用戶
建立配置庫,咱們能夠使用命令行方式,也能夠使用UI點擊的方式。這裏我就直接使用UI的方式了。
隨後,開啓咱們的SVN服務
把一個文件夾放置到配置庫中,交由SVN管理
在SVN中查看咱們添加的內容:
查看具體的日誌
標識得很是清晰:
把SVN的數據導出到用戶中。
導出後:這個local文件夾其實就是咱們的工做副本!
我在工做副本中添加了一個文件
添加到SVN中:
隨後,變成了一個藍色的圖標+號,咱們提交。
咱們可能會出現這樣的一個問題:咱們的SVN是一個團隊正在開發。可是在commit以前,有人就把我正在編輯的文件給修改了。因而當我在提交的時候就出現了衝突【當前的數據不一致,衝突了】
localhost2用戶導出了SVN的數據,而且修改了文件:
另外一個用戶localhost也在修改該文件,可是它沒有作updata操做。並不知道該文件已經被修改了。
當他修改完,想要更新到SVN中的時候,發現衝突了。
面對衝突,咱們有兩種方案:
咱們進去衝突修改的頁面,決定要的是哪一行的數據
最後修改完,點擊保存操做就好了。
關於衝突的建議