栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

SVN搭建及使用(CentOS7)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SVN搭建及使用(CentOS7)

一、SVN简介

SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。

二、安装SVN
[root@localhost ~]# yum install -y subversion

查看安装了哪些文件

[root@localhost ~]# rpm -ql subversion

一大堆

三、建立版本库

subversion默认以/var/svn作为数据根目录,可以通过/etc/sysconfig/svnserve修改这个默认位置。

然后使用svnadmin建立版本库

[root@localhost ~]# mkdir -p /data/svn
[root@localhost ~]# svnadmin create /data/svn
[root@localhost ~]#  ll /data/svn -d
drwxr-xr-x 6 root root 86 6月   5 23:40 /data/svn
[root@localhost ~]#  ll /data/svn
总用量 8
drwxr-xr-x 2 root root  54 6月   5 23:40 conf
drwxr-sr-x 6 root root 233 6月   5 23:40 db
-r--r--r-- 1 root root   2 6月   5 23:40 format
drwxr-xr-x 2 root root 231 6月   5 23:40 hooks
drwxr-xr-x 2 root root  41 6月   5 23:40 locks
-rw-r--r-- 1 root root 229 6月   5 23:40 README.txt
[root@localhost ~]# 

四、配置

4.1 编辑passwd,添加两个用户:xuyuhan,test

[root@localhost ~]# cd /data/svn/
[root@localhost svn]# ls
conf  db  format  hooks  locks  README.txt
[root@localhost svn]# cd conf/
[root@localhost conf]# ls
authz  passwd  svnserve.conf
[root@localhost conf]# vim passwd 


4.2 编辑权限文件authz,设置chen可读可写权限,test可读

[root@localhost conf]# ls
authz  passwd  svnserve.conf
[root@localhost conf]# vim authz 

4.3编辑svnserver.conf (注意:配置的前面不能有空格,一定要顶格写)

[root@localhost conf]# vim svnserve.conf    


anon-access = none:表示禁止匿名用户访问。

auth-access = write:表示授权用户拥有读写权限。

password-db = passswd:指定用户名口令文件,即 passwd 文件。

authz-db = authz:指定权限配置文件,即 authz 文件。

realm = /data/svn :指定认证域,我这里设置的 /data/svn 目录。

五、防火墙开启

这里以iptable防火墻为例 (centos6)

多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题【注意:如果是阿里云,腾讯云的服务器,还需在安全组添加端口开启规则】

vi /etc/sysconfig/iptables
添加配置信息

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT
保存退出

systemctl restart iptables.service #重启防火墙使配置生效

六、启动svn服务器
svnserve -d -r /data/svn       #无报错提示

启动成功后,可用ps -aux查看服务启动是否成功

ps -ef | grep svnserve

七、客户端访问svn服务器

装个Windows客户端,鼠标右键检出,在版本库下栏输入地址:svn://ip地址:3690/xxxx (iP地址为你linux的ip,xxxx为前文创建的版本库名称,3690为svn默认端口)

也可点后边的…输入账号密码进入版本目录选择,我输入我刚才创建的xuyuhan可读写用户,点确定,进行检出~

由于我没有设置版本目录名称,所以检出一个空目录~

我试着放了个Django目录进去,选择全部文件后进行提交~


此时我删掉该目录后,重新重新检出


八、关闭SVN 方法
这里采取linux杀死进程的方式处理的

[root@localhost conf]# ps -ef | grep svnserve 
root      11336      1  0 22:47 ?        00:00:00 svnserve -d -r /data/svn
root      11338   1432  0 22:47 pts/0    00:00:00 grep --color=auto svnserve
[root@localhost conf]# kill -9 11336
[root@localhost conf]# ps -ef | grep svnserve 
root      11340   1432  0 22:48 pts/0    00:00:00 grep --color=auto svnserve

发现客户端对服务端的操作都失败了~

[root@localhost conf]# svnserve -d -r /data/svn     #重新启动svn服务

九、上传的文件放在SVN服务器的哪个目录下

SVN服务器版本库有两种格式,一种为FSFS,一种为BDB

把文件上传到SVN版本库后,上传的文件不再以文件原来的格式存储,而是被svn以它自定义的格式压缩成版本库数据,存放在版本库中。

如果是FSFS格式,这些数据存放在版本库的db目录中,里面的revs和revprops分别存放着每次提交的差异数据和日志等信息

十、未解决的问题

这里我发现我明明是yum安装的,但是却无法使用systemctl命令来进行启动跟加入开机自启,查看状态也是关闭的,但是能用,奇怪,有知道麻烦帮我解答下哈~不胜感激!

文章摘自csdn各位大佬,还需要继续学习~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/964859.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号