Linux下搭建svn服务器(转)
2014-11-03 11:36
253 查看
原文地址:http://blog.163.com/longsu2010@yeah/blog/static/173612348201202114212933/
安装步骤如下:
1、yum install subversion
2、输入rpm -ql subversion查看安装位置,如下图:
我们知道svn在bin目录下生成了几个二进制文件。
输入 svn --help可以查看svn的使用方法,如下图。
3、创建svn版本库目录
mkdir -p /var/svn/svnrepos
4、创建版本库
svnadmin create /var/svn/svnrepos
执行了这个命令之后会在/var/svn/svnrepos目录下生成如下这些文件
5、进入conf目录(该svn版本库配置文件)
authz文件是权限控制文件
passwd是帐号密码文件
svnserve.conf SVN服务配置文件
6、设置帐号密码
vi passwd
在[users]块中添加用户和密码,格式:帐号=密码,如dan=dan
7、设置权限
vi authz
在末尾添加如下代码:
[/]
dan=rw
w=r
意思是版本库的根目录dan对其有读写权限,w只有读权限。
8、修改svnserve.conf文件
vi svnserve.conf
打开下面的几个注释:
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /var/svn/svnrepos # 认证空间名,版本库所在目录
9、启动svn版本库
svnserve -d -r /var/svn/svnrepos
10、在windows上测试
新建一个测试文件夹,在该文件夹下右键选择 SVN checkout如下图(要事先安装TortoiseSVN):
填写SVN的地址,如下图:
输入密码,如下图:
与apache搭配,web管理
vi /etc/httpd/conf/httpd.conf
在文件末尾添加
<Location /svn>
DAV svn
SVNPath /home/svn
AuthType Basic
AuthName "Welcom! ^_^"
AuthUserFile /home/svn/conf/webpasswd
AuthzSVNAccessFile /home/svn/conf/authz
Require valid-user
</Location>
这时候重启apache会提示Unknown DAV provider: svn
所以在安装一下mod_dav_svn,命令yum install mod_dav_svn
因为http访问是采用的加密方式,而svn记录的为明文密码,所以需要加密一下
cd /home/svn/conf/
/usr/bin/htpasswd -bc webpasswd 用户名 密码
重启apache
多项目管理
其实就是新建1个目录,然后再svnadmin create创建多个仓库,最后将这个目录svnserve -d -r上去。这些仓库conf配置文件指向同一个authz和passwd就可以了,结束。
1. 服务器的确定
2. 配置管理工具的确定(SVN)
3. 建版本库的根目录,如下图所示,svnroot根目录下有project1和project2两个库
4. 创建第一个项目project1,命令:svnadmin create E:\svnroot\project1
5. 创建第二个项目project2,命令:svnadmin create E:\svnroot\project2
6. 为了便于管理,将所有版本库的密码和权限设置在同一个文件下面,操作步骤如下:
6.1 取出project1下面conf文件夹下的authz和passwd两个文件到svnroot根目录下面
6.2 修改每个版本库目录conf文件夹下面的svnserve.conf文件, 将
# anon-access = read ,#auth-access = write ,# password-db = passwd,#authz-db = authz 修改为:
anon-access = none ,auth-access= write,password-db = ../../passwd,authz-db = ../../authz
(password-db = ../../passwd,authz-db = ../../authz代表相对路径而非绝对路径)
7. 定义一下几个角色用来测试
7.1 配置管理员(svnadmin),用来管理整个库
7.2 项目经理(manage),用来相关管理文档
7.3 开发人员 (dev),测试开发是否正常
8. 下面添加角色
打开svnroot目录下的passwd文件,创建方法是在[user]下面添加 username = passwd,记得“=”前后的空格,如下图:(svnadmin控制所有项目,统一管理)
9. 为角色分配权限:假设(quxin是project1的项目经理,huzhixin是project2的项目经理,dev1、dev2是project1的开发人员,dev3、dev4是project2的开发人员,test1是project1的测试人员,test2是project2的测试人员)
安装步骤如下:
1、yum install subversion
2、输入rpm -ql subversion查看安装位置,如下图:
我们知道svn在bin目录下生成了几个二进制文件。
输入 svn --help可以查看svn的使用方法,如下图。
3、创建svn版本库目录
mkdir -p /var/svn/svnrepos
4、创建版本库
svnadmin create /var/svn/svnrepos
执行了这个命令之后会在/var/svn/svnrepos目录下生成如下这些文件
5、进入conf目录(该svn版本库配置文件)
authz文件是权限控制文件
passwd是帐号密码文件
svnserve.conf SVN服务配置文件
6、设置帐号密码
vi passwd
在[users]块中添加用户和密码,格式:帐号=密码,如dan=dan
7、设置权限
vi authz
在末尾添加如下代码:
[/]
dan=rw
w=r
意思是版本库的根目录dan对其有读写权限,w只有读权限。
8、修改svnserve.conf文件
vi svnserve.conf
打开下面的几个注释:
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /var/svn/svnrepos # 认证空间名,版本库所在目录
9、启动svn版本库
svnserve -d -r /var/svn/svnrepos
10、在windows上测试
新建一个测试文件夹,在该文件夹下右键选择 SVN checkout如下图(要事先安装TortoiseSVN):
填写SVN的地址,如下图:
输入密码,如下图:
与apache搭配,web管理
vi /etc/httpd/conf/httpd.conf
在文件末尾添加
<Location /svn>
DAV svn
SVNPath /home/svn
AuthType Basic
AuthName "Welcom! ^_^"
AuthUserFile /home/svn/conf/webpasswd
AuthzSVNAccessFile /home/svn/conf/authz
Require valid-user
</Location>
这时候重启apache会提示Unknown DAV provider: svn
所以在安装一下mod_dav_svn,命令yum install mod_dav_svn
因为http访问是采用的加密方式,而svn记录的为明文密码,所以需要加密一下
cd /home/svn/conf/
/usr/bin/htpasswd -bc webpasswd 用户名 密码
重启apache
多项目管理
其实就是新建1个目录,然后再svnadmin create创建多个仓库,最后将这个目录svnserve -d -r上去。这些仓库conf配置文件指向同一个authz和passwd就可以了,结束。
1. 服务器的确定
2. 配置管理工具的确定(SVN)
3. 建版本库的根目录,如下图所示,svnroot根目录下有project1和project2两个库
4. 创建第一个项目project1,命令:svnadmin create E:\svnroot\project1
5. 创建第二个项目project2,命令:svnadmin create E:\svnroot\project2
6. 为了便于管理,将所有版本库的密码和权限设置在同一个文件下面,操作步骤如下:
6.1 取出project1下面conf文件夹下的authz和passwd两个文件到svnroot根目录下面
6.2 修改每个版本库目录conf文件夹下面的svnserve.conf文件, 将
# anon-access = read ,#auth-access = write ,# password-db = passwd,#authz-db = authz 修改为:
anon-access = none ,auth-access= write,password-db = ../../passwd,authz-db = ../../authz
(password-db = ../../passwd,authz-db = ../../authz代表相对路径而非绝对路径)
7. 定义一下几个角色用来测试
7.1 配置管理员(svnadmin),用来管理整个库
7.2 项目经理(manage),用来相关管理文档
7.3 开发人员 (dev),测试开发是否正常
8. 下面添加角色
打开svnroot目录下的passwd文件,创建方法是在[user]下面添加 username = passwd,记得“=”前后的空格,如下图:(svnadmin控制所有项目,统一管理)
9. 为角色分配权限:假设(quxin是project1的项目经理,huzhixin是project2的项目经理,dev1、dev2是project1的开发人员,dev3、dev4是project2的开发人员,test1是project1的测试人员,test2是project2的测试人员)
相关文章推荐
- Linux系统下SVN服务器的搭建过程详解
- 搭建SVN服务器及客户端(WIN+LINUX)
- Redhat Enterprise Linux Server 5.4搭建SVN服务器
- linux下搭建SVN服务器完全手册
- linux下搭建SVN服务器完全手册-很强大!!!!!
- Linux下SVN服务器的搭建与配置
- 【转】 linux下搭建SVN服务器完全手册
- Redhat Enterprise Linux Server 5.4搭建SVN服务器
- Linux 搭建SVN 服务器
- Linux下SVN服务器搭建(CentOS+Subversion)
- linux上配置svnserve服务,搭建自己的svn服务器
- linux 搭建SVN服务器。
- linux下svn服务器搭建以及相关问题解决方案
- Linux下的svn服务器的搭建
- Linux下SVN服务器的搭建与配置
- Linux下SVN服务器的搭建与配置
- Linux系统下SVN服务器的搭建过程详解
- linux 搭建SVN服务器。
- Linux下SVN服务器搭建
- Linux下SVN服务器的搭建与配置