CentOS6.7部署SVN服务器

本文涉及的产品
云防火墙,500元 1000GB
简介:
+关注继续查看

SVN的介绍

https://zh.wikipedia.org/wiki/Subversion


安装说明:

系统环境:CentOS 6.75

安装方式:YUM安装


安装:

先确认本地是否已经安装subversion

1
rpm -qa subversion

如果有安装subversion,先删除旧版本

1
yum remove subversion

安装svn

1
yum -y install subversion

检查版本

1
svnserve --version


安装后的配置:


创建SVN库:

1
mkdir -p /opt/svn

创建repo代码库

1
svnadmin create /opt/svn/repo

创建完成后,生成以下文件

1
2
3
4
5
6
7
8
[root@localhost repo]# ll
total 24
drwxr-xr-x. 2 root root 4096 Jun 15 20:05 conf
drwxr-sr-x. 6 root root 4096 Jun 15 20:26 db
-r--r--r--. 1 root root    2 Jun 15 19:08 format
drwxr-xr-x. 2 root root 4096 Jun 15 19:08 hooks
drwxr-xr-x. 2 root root 4096 Jun 15 19:08 locks
-rw-r--r--. 1 root root  229 Jun 15 19:08 README.txt



配置代码库:

cd /opt/svn/repo/conf


添加账户密码psswd配置

修改passwd文件,通过在文件中追加 账号 = 密码来创建用户

1
2
3
4
5
[users]
# harry = harryssecret
# sally = sallyssecret
zeng = 123456
zhou = 123456



权限控制authz配置

svn的权限控制都是在authz文件中设定,该文件定义了哪些用户可以访问哪些目录

[groups]            #

admin = hello,www   #创建一个admin组,将用户hello、www加入到组

[/]                 #根目录权限设置(就是“svn”这个文件夹)

aaa = rw            #aaasvn下的所有版本库有读写权限

[repo:/]            #repo:/,表示对repo版本库下的所有资源设置权限

@admin = rw         #admin组的用户对repo版本库有读写权限

[repo2:/occi], ,表示对版本库repo2中的occi项目设置权限

[repo2:/occi/aaa], ,表示对版本库2中的occi项目的aaa目录设置权限  权限主体可以是用户组、用户或*,用户组在前面加@*表示全部用户。权限可以是wrwr和空,空表示没有任何权限。


服务svnserve.conf配置

[root@admin conf]#vim svnserve.conf

追加以下内容:

[general]
#
匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#
使授权用户有写权限
auth-access = write
#
密码数据库的路径
password-db = passwd
#
访问控制文件
authz-db = authz
#
认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字

realm = repo //这里也可以写完成路径 /opt/svn/repo


防火墙配置

使用svn必须在SVN服务器上开发防火墙端口,或者直接关闭防火墙

防火墙开发svn的端口,编辑/etc/sysconfig/iptables文件,加入以下配置

1
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT


SELinux配置

建议直接disable掉selinux


启动SVN

1
svnserve -d -r /opt/svn/

停止svn服务

1
killall svnserve

查看svn的服务进程

1
2
[root@localhost conf]# netstat -tunlp | grep svn
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN      1473/svnserve

 

客户端的安装:

windows上安装客户端

客户端下载地址:http://ufpr.dl.sourceforge.net/project/tortoisesvn/1.9.4/

需要安装tortoisesvn客户端和语言包。

安装完成后,需要重启。然后更改语言

wKiom1dqF4Pgd8X6AAFmDEdn3bU770.png

wKioL1dqF4WjsoxDAAKRFurgTFU004.png


测试

在客户端桌面上创建一个svntest的目录。然后在桌面上右键 ==> SVN检出

wKiom1dqGRbgN9c_AADX55TFBeQ200.png

wKioL1jaFnPSEtakAAC6uWYT3FE148.png

注意上图中svn地址不能写成svn://172.16.42.133/opt/svn/repo的完整路径,否则会报错


wKioL1dqGUCywdK4AAGmR0mgM-Y197.png



客户端上传文件

windows上要添加的文件移动至repo文件夹进行上传,上传哪个文件就点击右键—添加

添加完成后,再次右键==>提交

客户端的具体使用,可以参考下面的官网文档。

http://ufpr.dl.sourceforge.net/project/tortoisesvn/1.9.4/Documentation/TortoiseSVN-1.9.4-zh_CN.pdf


修改文件的正确操作流程:

先更新要修改的文件,然后将文件锁定,这样别人虽然能同时修改这个文件,但是不能提交。当你编辑完成并提交后,文件自动解除锁定



如何创建并启用多个代码库?


跟前面的操作一样,创建代码库,这里以新建一个名为it的代码库为例

1
svnadmin create /opt/svn/it

然后和前面一样,修改配置文件。


启用代码库,监听在不同的端口上

1
svnserve -d -r /opt/svn/it --listen-port 3691
1
2
3
[root@localhost conf]# netstat -tunlp | grep svn
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN      1740/svnserve       
tcp        0      0 0.0.0.0:3691                0.0.0.0:*                   LISTEN      1791/svnserv









本文转自 曾哥最爱 51CTO博客,原文链接:http://blog.51cto.com/zengestudy/1791678,如需转载请自行联系原作者
目录
相关文章
|
3天前
|
算法 程序员 Apache
Windows下搭建SVN服务器并配置eclipse和idea
Windows下搭建SVN服务器并配置eclipse和idea
24 1
|
3天前
|
网络安全 数据安全/隐私保护
Centos8下快速搭建SVN服务器
Centos8下快速搭建SVN服务器
18 0
|
7天前
|
小程序 Linux Shell
SVN配置服务器自动更新
使用svn做版本控制服务器,其实还是比较方便的,不管是从搭建还是配置上,相对于git,都要简单很多。 Linux如何搭建SVN服务器,请移步《Centos7安装SVN》
14 0
|
18天前
SVN服务器地址变更,本地如何更新同步
SVN服务器地址变更,本地如何更新同步
9 0
|
2月前
|
存储 网络协议 Ubuntu
Linux环境搭建SVN服务器并实现公网访问 - cpolar端口映射
Linux环境搭建SVN服务器并实现公网访问 - cpolar端口映射
|
Java jenkins 应用服务中间件
Jenkins:从SVN拉取Maven项目,部署Tomcat(Deploy to container)
Jenkins:从SVN拉取Maven项目,部署Tomcat(Deploy to container)
116 0
Jenkins:从SVN拉取Maven项目,部署Tomcat(Deploy to container)
|
存储 网络协议 数据安全/隐私保护
|
运维 Java 应用服务中间件
|
测试技术 Linux 数据安全/隐私保护
推荐文章
更多