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,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
弹性计算 监控 负载均衡
|
2月前
|
弹性计算 开发工具 git
2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我在部署托管于Github/Gitee的代码到阿里云ECS服务器时,经常遇到繁琐的手动配置问题。近期,阿里云ECS控制台推出了一键构建部署功能,简化了这一过程,支持Gitee和GitHub仓库,自动处理git、docker等安装配置,无需手动登录服务器执行命令,大大提升了部署效率。本文将详细介绍该功能的使用方法和适用场景。
2分钟在阿里云ECS控制台部署个人应用(图文示例)
|
2月前
|
NoSQL 容灾 MongoDB
MongoDB主备副本集方案:两台服务器使用非对称部署的方式实现高可用与容灾备份
在资源受限的情况下,为了实现MongoDB的高可用性,本文探讨了两种在两台服务器上部署MongoDB的方案。方案一是通过主备身份轮换,即一台服务器作为主节点,另一台同时部署备节点和仲裁节点;方案二是利用`priority`设置实现自动主备切换。两者相比,方案二自动化程度更高,适合追求快速故障恢复的场景,而方案一则提供了更多的手动控制选项。文章最后对比了这两种方案与标准三节点副本集的优缺点,指出三节点方案在高可用性和数据一致性方面表现更佳。
145 5
|
2月前
|
Oracle 关系型数据库 MySQL
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
Centos7下图形化部署单点KFS同步工具并将Oracle增量同步到KES
|
2月前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
3月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
744 3
|
3月前
|
NoSQL Linux PHP
|
3月前
|
弹性计算 数据库连接 Nacos
阿里云ECS服务器在docker中部署nacos
docker pull nacos 失败,docker部署nacos遇到的问题,nacos数据库连接,nacos端口映射
290 1
|
数据采集 SQL 弹性计算
使用云服务器ECS部署了自己的第一个爬虫
云服务器部署爬虫爬取网站最新通告并推送
使用云服务器ECS部署了自己的第一个爬虫
|
10天前
|
弹性计算 数据挖掘 应用服务中间件
阿里云轻量应用服务器68元与云服务器99元和199元区别及选择参考
目前阿里云有三款特惠云服务器,第一款轻量云服务器2核2G68元一年,第二款经济型云服务器2核2G3M带宽99元1年,第三款通用算力型2核4G5M带宽199元一年。有的新手用户并不是很清楚他们之间的区别,因此不知道如何选择。本文来介绍一下它们之间的区别以及选择参考。
232 87