1、通过yum命令安装svnserve,命令如下
yum install subversion
2、查看svn版本
svnserve --version
3 、创建版本库目录
mkdir /var/svn/svnrepos
4、创建svn版本库
svnadmin create /var/svn/svnrepos/xxxx
进入cd /var/svn/svnrepos/xxxx/conf
进入上面生成的文件夹conf下,进行配置, 有以下几个文件authz,passwd,svnserve.conf。其中authz 是权限控制,可以设置哪些用户可以访问哪些目录,passwd是设置用户和密码的,svnserve是设置svn相关的操作,生成的文件中都有英文注释说明。
5、配置 svnserv.conf
# vim svnserv.conf
[general]
anon-access = none # 使非授权用户无法访问
auth-access = write # 使授权用户有写权限
password-db = password # 用户密码文件
authz-db = authz # 访问控制文件
realm = /home/svn/project # 认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。
# 采用默认配置,以上语句都必须顶格写,左侧不能留空格,否则会出错。
配置passwd(格式:帐号=密码)
username = 123456
配置authz权限
# 在末尾添加如下代码
[/]
username = rw
# r:读,w:写
记住:请关闭防火墙或开启3690端口
启动命令
svnserve -d -r /var/svn/svnrepos
启动成功后 ps aux | grep svn 可以查看svn进程
在windows客户端,输入地址:svn://ip地址:3690/xxxx (iP地址为你linux的ip,xxxx为前文创建的版本库名称,3690为svn默认端口)
弹出输入用户名和密码,输入即可访问
If.svnadmin的搭建
下载:iF.SVNAdmin 下载地址:http://svnadmin.insanefactory.com/
修改配置文件/etc/httpd/conf.d/subversion.conf
<Location /svn>
DAV svn
SVNParentPath /var/www/svn
AuthType Basic
AuthName "Authorization SVN"
AuthzSVNAccessFile /var/www/svn/authz
AuthUserFile /var/www/svn/passwd
Require valid-user
</Location>
创建存放的仓库和存放权限信息的目录
mkdir -p /var/www/svn /var/www/svnconfig
授权并给apache角色权限
chmod -R 777 /var/www/svn
chown -R apache:apache /var/www/svn
chmod -R 777 /var/www/svnconfig
chown -R apache:apache /var/www/svnconfig/
创建svn权限信息文件
touch /var/www/svnconfig/accessfile /var/www/svnconfig/passwdfile
chmod -R 777 /var/www/svnconfig/accessfile
chown -R apache:apache /var/www/svnconfig/accessfile
chmod -R 777 /var/www/svnconfig/passwdfile
chown -R apache:apache /var/www/svnconfig/passwdfile
将if.svnadmin的目录包 放到/var/www/html中
给data文件赋权
chmod -R 777 /var/www/html/svnadmin/data/
chown -R apache:apache /var/www/html/svnadmin/
启动httpd服务
service httpd start
输入完成后点击Save configuration。提示默认账户admin/admin
点击Repositories并选择Add,创建一个repo
输入需要创建的repo名称,其他默认即可,然后点击Create,创建完成repo后,点击Access-Paths添加权限
通过http://servername/svn/reponame,使用admin账户进入刚刚建立完成的repo
通过如下命令来启用服务
[root@localhost ~]# systemctl start httpd.service
如下命令使其开机自启动
[root@localhost ~]# systemctl enable httpd.service
重启Apache
[root@localhost ~]# systemctl restart httpd.service
如果网站出现data权限不足,
修改vim /etc/sysconfig/selinux 下
SELINUX=enforcing 改为 SELINUX=disabled
重启电脑
参考网站:https://blog.csdn.net/u011186019/article/details/51292582