ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

CentOS 7下搭建SVN服务器&多项目教程

2020-10-15 11:02:41  阅读:257  来源: 互联网

标签:SVN svn 教程 CentOS svnserve conf home project1


windows下使用到的操作软件:
putty、TortoiseSVN

安装步骤:
1.使用 putty 连接Linux终端后下载安装SVN服务端

yum install subversion

2.查看SVN服务端安装版本

svnserve --version

 3.创建SVN版本库目录,project1、project2分别为“项目1”、“项目2”

mkdir -p /home/svn/project1
mkdir -p /home/svn/project2

 4.创建版本库

svnadmin create /home/svn/project1
svnadmin create /home/svn/project2

执行了这两句命令之后会在/home/svn/project1、/home/svn/project2目录下生成如下这些文件:conf db format hooks locks README.txt

 

 

 5.创建版本库公共配置文件存放目录,随便打开一个项目版本库复制一份conf目录(即:/home/svn/project1/conf)到 /home/svn 目录下

cp -r /home/svn/project1/conf /home/svn/conf

 

 

 6.清空刚才创建的项目版本库conf目录,删除库的所有配置文件

rm -f /home/svn/project1/conf/*
rm -f /home/svn/project2/conf/*

 

 

 

 7.进入/home/svn/conf目录(进行版本库配置)

cd /home/svn/conf
authz         - 文件是权限控制文件
passwd        - 是帐号密码文件
svnserve.conf - SVN服务配置文件

 

 

 

 8.设置账号密码 vi passwd
在[users]块中添加用户和密码,格式:帐号=密码,如下

user1 = 123456
user2 = 123456
user3 = 123456
user4 = 123456
user5 = 123456

 

 

 9.设置用户权限&项目分组 vi authz
在[groups]块中添加项目分配用户,格式:项目目录名=用户名(账号),如下

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
project1 = user1,user2,user3,user4,user5
project2 = user1,user2,user3

 

在末尾添加如下代码:

[/]
* = r
root = rw

[project1:/]
@project1 = rw

[project2:/]
@project2 = rw

 

@project2 = rw 中的"rw"意思是[groups]下定义的用户对指定的Project版本库有读写权限

10.修改svnserve.conf文件 vi svnserve.conf
打开下面的几个注释,并修改如下:

   anon-access = none #匿名用户可读(none匿名不可读写)
   auth-access = write #授权用户可写
   password-db = ../../conf/passwd #使用哪个文件作为账号文件
   authz-db = ../../conf/authz #使用哪个文件作为权限文件
   realm = /home/svn # 认证空间名,版本库所在目录

 

 

 

 11.复制 svnserve.conf 配置文件到刚创建的所有项目版本库的conf目录下

cp -f /home/svn/conf/svnserve.conf /home/svn/project1/conf/svnserve.conf
cp -f /home/svn/conf/svnserve.conf /home/svn/project2/conf/svnserve.conf

好啦,到这里仅剩最后一步就完成了时需说明一下 /home/svn/conf 下的svnserve.conf 文件,当SVN服务启动时他并不会被版本库载入,而真正被载入的配置是相对每个Project/conf里的svnserve.conf 文件,所以只是备份在当前目录下为了以后添加项目时方便复制到新的Project/conf里,因此所有项目版本库conf目录下的svnserve.conf文件都是一样的!当然啦每个Project/conf里的svnserve.conf 文件都复制好了后 /home/svn/conf 下的svnserve.conf 文件也可以被删掉。

 

 12.启动svn版本库服务

svnserve -d -r /home/svn(停止SVN命令  killall svnserve)

 配置防火墙端口,开放3690端口(SVN默认端口)

firewall-cmd --zone=public --add-port=3690/tcp --permanent

 

记得重启防火墙

firewall-cmd --reload

 

 

 CentOS 7 以下版本防火墙端口配置如下:

[root@localhost conf]# vi /etc/sysconfig/iptables 
添加以下内容: 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT 
保存后重启防火墙 
[root@localhost conf]# service iptables restart 
或是关闭防火墙 :service iptables stop

13.windows 上测试搭建是否成功
输入SVN地址:

 

 输入用户名和密码:

 

 如果能够checkout 则表示SVN服务器搭建并设置成功了,到此为止SVN服务器的搭建就已经完成了!

以下是远程Linux系统中的一些操作命令和快捷键:
cd 打开目录
cp 复制目录或文件
ls 查看当前目录文件
cat 查看文件内容
vi 编辑文件 (操作快捷键 按"i"插入模式,按"Esc"退出插入模式。":q!"取消编辑不保存编辑内容。":x"保存并退出vi编辑。)

 

标签:SVN,svn,教程,CentOS,svnserve,conf,home,project1
来源: https://www.cnblogs.com/eeds-wangwei/p/dejan.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有