svn服務端安裝配置git
1. subversionweb
2. 版本管理工具apache
3. 全部數據都集中在一個服務器端檔案庫裏,相似FTP工具。vim
4. 管理任意一個元素(文件),任什麼時候刻的變化。服務器
5. svn會備份並記錄每一個文件每一次的修改更新變更。網絡
VSS、CVS、SVN、Gitapp
1. SVN版本控制系統是集中式的數據管理,存在一箇中央版本庫,全部開發人員本地開發所使用的代碼都是來自於這個版本庫,提交代碼也都必須提交到這個中央版本庫。運維
2. Git是分佈式的版本控制,沒有中央版本庫的說法,可是爲了開發小組的代碼共享,一般仍是會搭建一個遠程的git倉庫。git和SVN不一樣的是,開發者本地也包含一個完整的git倉庫,從某種意義上說本地的倉庫和遠程的倉庫在身份上是等價的,沒有主從之分。ssh
1. 安裝、部署、維護、排障。分佈式
2. 簡單的使用,不少公司都是有開發管理,包括創建新倉庫和添加刪除帳號。
3. 對於版本控制系統,運維人員至關於開發商,開發人員是業主,運維搭建的系統爲開發人員服務的。
1. 獨立服務器訪問
訪問地址如:svn://svn.wangning.org/sadoc
2. 藉助apache等http服務
訪問地址如:http://svn.wangning.org/sadoc
a. 單獨安裝apache+svn(不要用)
b. CSVN(apahce+svn)是一個單獨的整合軟件,帶web界面管理的SVN軟件
3. 本地直接訪問
訪問地址如:file://application/svndata/sadoc
這裏咱們主要使用第一種方式以及第二種方式中的CSVN web管理方式。
SVN客戶單能夠經過多種方式訪問服務器端,例如:本地磁盤訪問,或各類各樣不一樣的網路協議訪問,但一個版本庫地址永遠都是一個URL,URL反應了訪問方法。
訪問方式 |
說明 |
file:// |
直接經過本地磁盤或者網絡磁盤訪問版本庫 |
http:// |
經過WebDAV協議訪問支持Subversion的Apache服務器 |
https:// |
與http://類似,可是用SSL加密訪問 |
svn:// |
經過TCP/IP自定義協議訪問svnserver服務器 |
svn+ssh:// |
經過認證並加密的TCP/IP自定義協議訪問svnserver服務器。 |
[root@svn ~]# rpm -qa subversion #查看SVN是否已安裝,默認是安裝的
[root@svn ~]# yum -y install subversion #如沒有,用yum安裝
[root@svn ~]# mkdir -p /application/svndata #建立數據存儲根目錄
[root@svn ~]# mkdir -p /application/svnpasswd #建立用戶、密碼權限目錄
[root@svn ~]# svnserve --help #查看svnserve命令幫助
[root@svn ~]# svnserve -d -r /application/svndata/ #啓動SVN服務指定服務的SVN根目錄 -d:daemon -r:表示服務的根目錄
[root@svn ~]# lsof -i:3690
[root@svn ~]# svnadmin create /application/svndata/sadoc #建立一個項目sadoc
[root@svn ~]# cd /application/svndata/sadoc/conf/
[root@svn conf]# ll
total 12
-rw-r--r--. 1 root root 1080 Jul 29 15:14 authz
-rw-r--r--. 1 root root 309 Jul 29 15:14 passwd
-rw-r--r--. 1 root root 2279 Jul 29 15:14 svnserve.conf
[root@svn conf]# cp svnserve.conf svnserve.conf.bak
[root@svn conf]# vim svnserve.conf
增長如下幾行,帶顏色的爲增長的內容
12 # anon-access = read
anon-access = none #禁止任何匿名用戶訪問
13 # auth-access = write
auth-access = write #認證用戶訪問具備寫權限
20 # password-db = passwd
password-db = /application/svnpasswd/passwd #密碼文件存放在passwd目錄裏
27 # authz-db = authz
authz-db = /application/svnpasswd/authz #用戶認證文件存放在authz目錄裏
[root@svn conf]# mv authz passwd /application/svnpasswd/
[root@svn conf]# cd /application/svnpasswd/
[root@svn conf]# cat >>passwd <<EOF #添加認證用戶
stu01 = 123456
stu02 = 123456
wangning = 123456
yangkuo = abc123
zhanglianhe = 678abc
EOF
[root@svn svnpasswd]# chmod 600 passwd
[root@svn svnpasswd]# vim authz 配置認證文件,帶顏色的部分爲增長的內容
21 [groups]
22 # harry_and_sally = harry,sally
23 # harry_sally_and_joe = harry,sally,&joe
24 oldboy23 = wangning,yangkuo,zhanglianhe #設置一個組oldboy23,組成員爲3我的
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
[sadoc:/] #定義一個項目爲sadoc
stu01 = rw #定義stu01用戶具備讀寫權限
stu02 = r
@oldboy23 = rw #定義oldboy23組成員具備讀寫權限
[root@svn svnpasswd]# pkill svnserve
[root@svn svnpasswd]# svnserve -d -r /application/svndata/