閱讀179 返回首頁    go 技術社區[雲棲]


快速學會SVN的搭建和使用

Subversion(SVN) 是一個開源的版本控製係統, 也就是說 Subversion 管理著隨時間改變的數據。這些數據放置在一個中央資料檔案庫(repository) 中。這個檔案庫很像一個普通的文件服務器, 不過它會記住每一次文件的變動。這樣你就可以把檔案恢複到舊的版本, 或是瀏覽文件的變動曆史。

  • repository(源代碼庫):源代碼統一存放的地方
  • Checkout(提取):當你手上沒有源代碼的時候,你需要從repository checkout一份
  • Commit(提交):當你已經修改了代碼,你就需要Commit到repository
  • Update (更新):當你已經Checkout了一份源代碼,Update一下你就可以和Repository 上的源代碼同步,你手上的代碼就會有最新的變更
日常開發過程其實就是這樣的(假設你已經Checkout並且已經工作了幾天):Update(獲得最新的代碼) —>作出自己的修改並調試成功 —> Commit(大家就可以看到你的修改了) 。
如果兩個程序員同時修改了同一個文件呢, SVN可以合並這兩個程序員的改動,實際上SVN管理源代碼是以行為單位的,就是說兩個程序員隻要不是修改了同一行程序,SVN都會自動合並兩種修改。
如果是同一行,SVN會提示文件Confict, 衝突,需要手動確認。

兩種方法安裝
  • 第一種
點擊免費下載阿裏雲SVN版本控製鏡像。
SVN版本控製(Centos 64位 | SVN)
完成之後,登錄”ECS 管理控製台”,在左邊導航欄裏,單擊”實例”,進入 ECS 實例列表頁,選擇所購 ECS 實例所在的地域,並找到所購 ECS 實例,在”IP 地址”列獲取該實例的公網 IP 地址。
  • 第二種
手動安裝
1. 環境
   centos7
2. 安裝svn
yum install subversion 
   查看版本
svnserve –version
快速學會SVN的搭建和使用
3. 創建版本庫
   先建目錄
mkdir /var/svn
創建版本庫
cd /var/svn
svnadmin create /var/svn/svnrepos

cd svnrepos會看到自動生成的版本庫文件:
conf  db  format  hooks  locks  README.txt
快速學會SVN的搭建和使用
subversion目錄說明:
  • db目錄:就是所有版本控製的數據存放文件。
  • hooks目錄:放置hook腳本文件的目錄。
  • locks目錄:用來放置subversion見艱苦鎖定數據的目錄,用來追蹤存取文件庫的客戶端。
  • format文件:是一個文本文件,裏麵隻放了一個整數,表示當前文件庫配置的版本號。
  • conf目錄:是這個倉庫的配置文件(倉庫的用戶訪問賬號、權限等)。
進入conf目錄(該svn版本庫配置文件)cd conf/
  • authz 文件是權限控製文件
  • passwd 是帳號密碼文件
  • svnserve.conf SVN服務配置文件
設置帳號密碼 vi passwd
[users]塊中添加用戶和密碼,格式:帳號=密碼,如suzhan=redhat
快速學會SVN的搭建和使用
設置權限 vi authz
在末尾添加如下代碼:
[/]
suzhan=rw (r:讀,w:寫)
快速學會SVN的搭建和使用
修改svnserve.conf文件 vi svnserve.conf
打開下麵的幾個注釋:
  • anon-access = read #匿名用戶可讀
  • auth-access = write #授權用戶可寫
  • password-db = passwd #使用哪個文件作為賬號文件
  • authz-db = authz #使用哪個文件作為權限文件
  • realm = /var/svn/svnrepos # 認證空間名,版本庫所在目錄
快速學會SVN的搭建和使用
啟動svn版本庫
svnserve -d -r /var/svn/svnrepos
停止SVN命令
killall svnserve
ps -ef |grep svn 查看服務是否開啟。
快速學會SVN的搭建和使用

如果沒有TortoiseSVN客戶端,可以去這裏 下載:https://yq.aliyun.com/articles/tortoisesvn.net/downloads.html, 根據從SVN服務器下載項目自己的實際情況下載對應版本。
在你的本地項目文件夾或隨便一個地方,右鍵空白處彈出菜單,選擇 SVN檢出。然後,通過從SVN服務端獲取的資源庫URL+具體的項目文件夾名下載相應項目,並可以知道下載項目的保存位置。
快速學會SVN的搭建和使用
快速學會SVN的搭建和使用
第一次登陸需要輸入密碼,一切以passwd文件裏麵的賬戶密碼為主!
快速學會SVN的搭建和使用

1. 把項目下載到本機後,其實就是一個普通的項目文件而已,你可以在裏麵添加文件、修改文件、刪除文件等等。
2. 提交修改 在項目文件空白處右鍵,選擇 SVN提交
快速學會SVN的搭建和使用
然後,輸入 本次提交的版本更新信息(所作修改的注釋)、勾選要提交的操作內容,點擊 確定,即可把本機項目提交到SVN服務器資源庫,覆蓋掉資源庫項目從而實現更新。
如果發生提交衝突,即兩人都提交修改,後提交者由於版本落後會提交失敗。這時可以先把自己的項目備份,然後從服務端下載最新的項目,再把自己的項目覆蓋到本地項目文件夾,最後SVN提交即可成功提交。
我剛剛刪掉了一個文件,這裏就會顯示: 
快速學會SVN的搭建和使用
3. 獲取更新
如果別人修改了SVN服務端資源庫上的項目,你想下載最新的項目,則在 本機項目文件空白處單擊鼠標右鍵,選擇 SVN更新 ,即可自動完成下載,並會提示所作的更新有哪些。
注意:在原項目文件夾內選擇SVN更新的話,會自動覆蓋掉原有內容。建議:先備份,再更新,防止自己本來的項目內容丟失。
快速學會SVN的搭建和使用
4. svn提供曆史還原功能
首先打開一個文件夾,右鍵檢出數據
快速學會SVN的搭建和使用

然後刪掉數據。這時如果不點提交的話,可以直接點鼠標右鍵還原即可。
快速學會SVN的搭建和使用
如果點擊提交了,那麼係統庫裏的數據也會得到同步,係統也會把它存的數據刪掉。
快速學會SVN的搭建和使用

這時點擊svn還原是沒有用的,需要查看日誌,看看是刪掉了什麼東西。
快速學會SVN的搭建和使用
然後把刪掉的文件保存版本到刪掉的位置,
快速學會SVN的搭建和使用
打開原文件夾,點擊提交,係統庫裏的數據就和這個文件同步了。

最後更新:2017-05-17 22:01:16

  上一篇:go  大規模數據的分布式機器學習平台
  下一篇:go  14個月365起融資事件、巨頭布局加速......人工智能商業化的時機到了嗎?