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/