[软件部署] Linux部署SVN

守听  金牌会员 | 2024-12-29 18:57:14 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 809|帖子 809|积分 2427

一、前言

  服务器厂商:华为云;
  Linux版本 : CentOS 8.2 64bit ;
  SVN版本 :1.10.2;
  闲谈:搭建的过程,主要是对端口的开辟和配置文件的处理修改。看了许多篇文章,有头无尾,到后面就推不下去,一连的失败使我痛苦不已,基本流程如下图所示。

二、安装svnserve

1、检察svn版本

  “rpm -qa subversion” 命令用于在 Linux 系统中查询已安装的 subversion 。
  1.         rpm -qa subversion
复制代码
  如果你安装了subversion,会表现如下信息。

2、卸载旧版本

  “yum -y remove subversion” 命令卸载在 Linux 系统中已安装的 subversion 。
  1.         yum -y  remove subversion
复制代码
  表现“Complete”,卸载已成功;

3、 下载安装

  表现“Complete”,安装成功;
  1.         yum -y install subversion
复制代码


三、创建版本库目次

  版本库目次根据你的需要,创建一个文件夹举行管理你的SVN库。这个目次位置是可以自定义的,如下图所示,是我在“/var/”路径下创建svn文件夹的过程。

四、创建svn版本库

  在版本库目次可能存在多个版本库,现在我们创建一个版本库“Note”。
  1. #   svnadmin create  <版本库名称>
  2.         svnadmin create   Note
复制代码
  如下图所示,创建完成后,“cd /路径”进入到我们的svn版本库位置,“ls”检察版本库。(这个位置实在版本库路径下的,下图仅作为本章节结果演示)。


五、配置文件修改

  在“conf”路径下,有三个文件需要配置修改;通过服务器长途访问、宝塔、WinSCR访问文件举行修改,通过vim指令举行配置修改;


  • conf:是这个堆栈配置文件(堆栈用户访问账户,权限) ;
  • format:是一个文本文件,里边只放了一个整数,表示当前文件库配置的版本号;
  • hooks:放置hook脚步文件的目次;
  • locks:用来放置subversion的db锁文件和db_logs锁文件的目次,用来追踪存取文件库的客户端。

1、 authz

  在“conf”路径下,打开"authz"文件;

  vim打开文件后,按一下”i“,开始对文件修改,可以设置组等操纵,如图所示,对用户”admin“和”note“赋予读写权限,其他为空;
  vim修改完成后,摁一下”Esc“键,输入”:wq“保存退出。


2、 passwd

  在“conf”路径下,打开"passwd"文件;对用户举行密码设置;
  1.     #例如”admin = admin123“
  2.    
  3.     #注意事项一个用户对应一个密码,在”=“左右各一个空格;
复制代码

3、 svnserve.conf

  在“conf”路径下,打开"svnserve.conf"文件;


  • anon-access 控制非鉴权用户访问版本库的权限。
  1.   取值范围为"write"、"read"和"none"。即"write"为可读可写,"read"为只读,"none"表示无访问权限。缺省值:read
复制代码


  • auth-access 控制鉴权用户访问版本库的权限。
  1.     取值范围为"write"、"read"和"none"。即"write"为可读可写,"read"为只读,"none"表示无访问权限。缺省值:write
复制代码


  • password-db 指定用户名口令文件名。
  1.    除非指定绝对路径,否则文件位置为相对conf目录的相对路径。缺省值:passwd
复制代码


  • authz-db 指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。
  1. 除非指定绝对路径,否则文件位置为相对conf目录的相对路径。缺省值:authz
复制代码



  • realm 指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的认证域相同,发起使用相同的用户名口令数据文件。
  1. 缺省值:一个UUID(Universal Unique IDentifier,全局唯一标示)。
复制代码
  这个文件的配置的主要题目在:
(1)#authz-db = authz,按照教程来说,它应该是放开的,但在放开之后就会存在检出失败的题目。在这里我是给注掉了。
(2)“realm = /svn”改为了版本库目次路径,就是你上文创建的谁人文件夹所在路径。这个也可不用修改。
(3)为了安全思量,”anon-access = none“,只有用户方可访问。
   PS:这个文件配置无误的话,我们就已经成功了70%。

六、防火墙配置

   subversion 的默认端口为3690,可在服务器举行配置,大概使用命令举行端口开放。

1、关闭防火墙

  1. service iptables stop
复制代码
2、开启3690端口

  1. /sbin/iptables -A INPUT -p tcp --dport 3690 -j ACCEPT
复制代码
   验证
  1. /sbin/iptables -L -n -v
复制代码

   保存
  1. service iptables save
复制代码
七、重启svn服务器

  1. svnserve -d -r /版本库目录地址
复制代码
   检察3690是否启动。
  1. netstat -apn | grep 3690
复制代码

八、版本库检出

   在linux服务器输入命令测试:
  1. svn co svn://ip地址:3690/xxxx
复制代码

八、结语

   我们具体探究了在 Linux 系统上安装和配置 Subversion(SVN)的过程。从基础的安装命令到堆栈的创建,再到 防火墙 的配置,我们希望这些步调可以或许帮助你顺遂搭建本身的版本控制系统。SVN 是一个强盛的工具,不仅能帮助开辟者管理代码版本,还能促进团队协作和项目管理。
   如果你在安装或使用过程中遇到题目,接待共同探究,本文中的不当之处,也接待指正。
附录

如果你的svn检出失败,很有可能由以下原因引起的:
1、防火墙端口、宝塔端口未开启;
2、发起使用配置无误的conf文件举行比对,是否conf配置导致检出失败。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

守听

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表