SVN服务器建站笔记(一):公司SVN服务器部署,一版本多仓库、多版本多仓库和客户端测试

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/150483050

长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…

其他(编程相关)


前言

  本篇搭建公司SVN管理。 关于git和svn不再对比。


服务器建立SVN步骤

步骤一:登录ssh

  服务器命令行登录即可,登录方式不限制。
  在这里插入图片描述

步骤二:安装svn

sudo yum install subversion

  在这里插入图片描述

步骤三:新建svn项目

  查看svn服务:

ps aux | grep svnserve

  创建版本库,每个项目是有一个版本库的,所以这些配置每个项目都有:

svnadmin create /root/svn/avmDemo

  在这里插入图片描述

  • conf目录:SVN版本库的配置文件(版本库的访问账号、权限等)。
  • db目录:存放所有版本控制的数据存放文件。
  • format文件:一个文本文件,文件中只包含一个整数,表示当前文件库配置的版本号。
  • hooks目录:放置hook脚本文件的目录。
  • locks目录:用来追踪存取文件库的客户端。

步骤四:设置SVN库的账号密码

  进入avmDemo版本库的conf目录,编译passwd文件即可:

cd /root/svn/AVMDemo
cd conf

  在这里插入图片描述

  暂时添加三个用户:

vi passwd

  在这里插入图片描述

  配置权限:
  在这里插入图片描述

步骤五:配置svn配置(关键步骤):

  修改svnserve.conf文件:
  在这里插入图片描述

  在这里插入图片描述

步骤六:启动版本库

  这里特别注意,avmDemo是版本库,我们还需要其他的版本库(一个项目一个),这里启用的时候用svn就好了,而不是svn/avmDemo:

svnerve -d -r /root/svn

  在这里插入图片描述

  其中 -d 表示守护进程, -r 表示在后台执行
  后续拉去的时候,就是avmDemo了,这里卡了一些时间做测试细化。
  查看版本库:

ps aux | grep svnserve

  在这里插入图片描述

  万一需要更改,则不要去动服务,直接关掉版本库进程即可,因为默认启动是/var/svn,我们修改了位置,所以重启起不来,但是可以重启服务器就好了(注意:重启服务器是一件很严肃的事情,笔者这个只是代码仓库而已):
  在这里插入图片描述

  这里贴上重启进行配置服务shell:

svnserve -d -r /root/svn

步骤七:配置authz,项目文件夹权限

  在这里插入图片描述

  这里单个仓库版本控制就是一个项目,根目录就是对这个地址的,所以是/,由于不是直接svn,是svn/avmDemo,所以新增如下:
  在这里插入图片描述

  修改配置后,好像不需要生效svn了,重复生效提示已经生效。
  在这里插入图片描述

  经过测试,修改权限是实时生效的,估计是使用权限的时候实时打开文件。

步骤八:开放SVN端口

  可以查看,我们前面配置文件没有设置端口号,默认就是3690:
  在这里插入图片描述

  进入云服务器对外开放端口:
  在这里插入图片描述

步骤九:svn服务随系统启动

  先配置svn服务器启动的路径:

vim /etc/sysconfig/svnserve

  在这里插入图片描述

  改成我们自己仓库的路径:
  在这里插入图片描述

  重启后查看:

ps -aux | grep svn

  在这里插入图片描述

  客户端测试也通过。


注意

  在svn的服务器上是看不到上传的东西的,而是提交一次svn会自动生成一个版本文件,这个文件是经过处理的,同样也看不到原文件。


补充:一版本仓库多文件夹方式

  以上是通过不同的仓库版本,来实现,可以在一个版本下,对不同版本进行文件夹区分,也是可以的。
  在这里插入图片描述

  测试也是可以达到目的。
  是一个版本库多个文件夹区分项目进入一个db控制,还是多个版本库对应db控制,怎么方便怎么来吧。(这种方式就是管理员下拉根目录下来,然后项目分文件夹,文件夹权限分给不同的人,这种方式,对开发人员来说,他只有自己的文件夹)
  经过测试,每次提交一次,版本号都会更新,哪怕demo1更新,demo2不更新,那么demo1和demo2和demo3是共用一般版本号,从这个方面考虑,需要使用多版本号。
  在这里插入图片描述

  在这里插入图片描述


客户端拉取

步骤一:装svn

  略

步骤二:检出仓库

  到目标文件夹(需要放入这个文件夹),然后鼠标右键“检出”:
  在这里插入图片描述

  在这里插入图片描述

步骤三:拉取

  输入账户名和密码, 拉取成功:
  在这里插入图片描述


入坑

入坑一:检出地址失败

问题

   “地址+仓库名称”检出失败:
  在这里插入图片描述

尝试

  之前为了做测试,关闭了svn服务,然后systemctl起不来了,状态如下:
  在这里插入图片描述
  在这里插入图片描述
  是因为安装的时候,默认就是/var/svn,但它又只是一个仓库版本,一个项目就有多个仓库版本,这里我们进行规避,不去修改配置文件了,直接建立目录,测试也不行。

解决

  重启服务器,然后生效版本仓库(由于服务器没加入启动脚本)。
  可以修改启动目录配置文件/etc/sysconfig/svnserve,然后开启svn服务,具体查看“步骤九”。


本文章博客地址:https://hpzwl.blog.csdn.net/article/details/150483050

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长沙红胖子Qt(技术Q群4597637)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值