標籤:style blog http io color ar os 使用 sp
安裝說明
安裝了一下SVN伺服器,本文沒有與Apache整合,過程如下:
系統內容:CentOS-6.2
安裝方式:yum install (源碼安裝容易產生版本相容的問題)
安裝軟體:系統自動下載SVN軟體
檢查已安裝版本
#檢查是否安裝了低版本的SVN
[[email protected] /]# rpm -qa subversion
#如果儲存舊版本,卸載舊版本SVN
[[email protected] modules]# yum remove subversion
安裝SVN
[[email protected] modules]# yum install subversion
驗證安裝
檢驗已經安裝的SVN版本資訊
[[email protected] modules]# svnserve --version
svnserve,版本 1.6.11 (r934486)
編譯於 Jun 23 2012,00:44:03
著作權 (C) 2000-2009 CollabNet。
Subversion 是開放原始碼軟體,請參閱 http://subversion.tigris.org/ 網站。
此產品包含由 CollabNet(http://www.Collab.Net/) 開發的軟體。
下列版本庫後端(FS) 模組可用:
* fs_base : 模組只能操作BDB版本庫。
* fs_fs : 模組與文字檔(FSFS)版本庫一起工作。
Cyrus SASL 認證可用。
程式碼程式庫建立
SVN軟體安裝完成後還需要建立SVN庫
[[email protected] modules]# mkdir -p /opt/svn/repo
[[email protected] modules]# svnadmin create /opt/svn/repo
執行上面的命令後,自動建立repo測試庫,查看/opt/svn/repo 檔案夾發現包含了conf, db,format,hooks, locks, README.txt等檔案,說明一個SVN庫已經建立。
配置程式碼程式庫
進入上面產生的檔案夾conf下,進行配置
[[email protected] modules]# cd /opt/svn/repo/conf
使用者密碼passwd配置
[[email protected] password]# cd /opt/svn/repos/conf
[[email protected] conf]# vim passwd
修改passwd為以下內容:
[users]
# harry = harryssecret
# sally = sallyssecret
hello=123
使用者名稱=密碼
這樣我們就建立了hello使用者, 123密碼
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
許可權控制authz配置
[[email protected] conf]# vi + authz
目的是設定哪些使用者可以訪問哪些目錄,向authz檔案追加以下內容:
#設定[/]代表根目錄下所有的資源
[/] 或者寫成[repl:/]
hello = rw
意思是hello使用者對repo測試庫下所有的目錄有讀寫權限,當然也可以限定。
如果是自己用,就直接是讀寫吧。
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
服務svnserve.conf配置
[[email protected] conf]# vim svnserve.conf
追加以下內容:
[general]
#匿名訪問的許可權,可以是read,write,none,預設為read
anon-access=none
#使授權使用者有寫入權限
auth-access=write
#密碼資料庫的路徑
password-db=passwd
#存取控制檔案
authz-db=authz
#認證命名空間,subversion會在認證提示裡顯示,並且作為憑證緩衝的關鍵字
realm=/opt/svn/repositories
以上語句都必須頂格寫, 左側不能留空格, 否則會出錯.
配置防火牆連接埠
[[email protected] conf]# vi /etc/sysconfig/iptables
添加以下內容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
儲存後重啟防火牆
[[email protected] conf]# service iptables restart
啟動SVN
svnserve -d -r /opt/svn/repo
查看SVN進程
[[email protected] conf]# ps -ef|grep svn|grep -v grep
root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r /opt/svn/repo
檢測SVN 連接埠
[[email protected] conf]# netstat -ln |grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN
停止重啟SVN
[[email protected] password]# killall svnserve //停止
[[email protected] password]# svnserve -d -r /opt/svn/repo // 啟動
如果已經有svn在運行,可以換一個連接埠運行
svnserve -d -r /opt/svn/ --listen-port 3391
測試
SVN服務已經啟動,使用用戶端測試連接。
用戶端串連地址:svn://192.168.15.231
使用者名稱/密碼: hello/123
測試建立檔案夾等操作。
建立版本庫:
終端輸入:svnadmin create [路徑]
該路徑可以是相對路徑,例如,當前在home/user/svn/目錄下,輸入svnadmin create myproject,則該版本庫會被建立在home/user/svn/目錄下,建立一個檔案夾名為myproject,其中便是版本庫的檔案了。
將檔案匯入版本庫:
終端輸入:svn import [源路徑] [目標版本庫路徑] -m [日誌資訊]
源路徑可以是相對路徑,匯入時會遞迴匯入源路徑下的所有檔案和檔案夾,目標版本庫路徑需要絕對目錄(反正我實驗是這樣的),例如版本庫的目錄是:home/user/svn/myproject/。則應該這樣寫:file:///home/user/svn/myproject/
例如將目前的目錄匯入版本庫myproject:
svn import . file:///home/user/svn/myproject -m"匯入檔案"
從版本庫匯出:
匯入後原檔案並未被納入版本管理,若想獲得受版本控制的檔案,就需要從版本庫匯出
終端輸入:svn co [版本庫路徑] [匯出目標路徑]
例如將myproject庫中的檔案匯出到目前的目錄:svn cofile:///home/user/svn/myproject .
五,在WindowsXP上安裝svn用戶端:TortoiseSVN(SVN用戶端)
1,:http://tortoisesvn.net/downloads.html
2,下載完成後,直接next安裝即可,安裝完成後需要重啟生效。
3,測試:
在案頭上建立一個名稱為svntest的目錄,在此目錄上點擊右鍵,選擇Checkout,在首行填寫svn伺服器的IP地址及倉庫名稱
輸入相應的使用者名稱稱及密碼後就可以使用了
更多CentOS相關資訊見CentOS 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=14
CentOS 6.2 SVN搭建 (YUM安裝)