Liunx服务器搭建SVN服务,并通过钩子实现代码自动部署

简介: Liunx服务器搭建SVN服务,并通过钩子实现代码自动部署

原文连接:https://www.rocschool.com/tutorial/rocschool-show-118.html

他这里面有好多坑,所以我整理了一分更详细的

我们来开始安装SVN服务器版本端,在宝塔里有SSH终端管理器,可以直接进行命令输入

安装SVN步骤

1、先要安装svn版本控制软件,需要在SSH命令控制器处输入命令安装,很简单。如:

句法 (Syntax)

yum -y install subversion

图:

2、安装好后,我们需要建立SVN存放目录。如:

句法 (Syntax)

mkdir /www/svndata

创建好后如下

3、建立好存放目录后,我们需要在svn安装目录下启动svn,将SVN绑定到/www/svndata目录

句法 (Syntax)

svnserve -d -r /www/svndata

4、启动好后,在创建一个新的版本库,在原创建的svndata下增加。如:rocschool

句法 (Syntax)

svnadmin create /www/svndata/rocschool

创建好后如图

打开文件后如下图

这时我们完成了创建过程,下面我们将要配置一下方可使用

5、我们需要配置svn访问帐号及密码

在宝塔打开文件目录/www/svndata/rocschool/conf/目录下的password文件,双击打开,然后添加访问账号密码

如:

在# sally = sallyssecret下回车换行输入:帐号 = 密码 如:rocschool = 123456 然后点击保存。

可以添加多个帐号及密码,每行一个密码及密码,如:

rocschool = 123456

rocschool2 = 123456

rocschool3 = 123456

6、给添加的帐号及密码设置访问权限,打开文件svnserve.conf

如设置如下四个前面的#及空格号注释去掉

anon-access = read

auth-access = write

password-db = passwd

authz-db = authz

说明:

匿名用户权限(none:拒绝, write:读写, read:只读权限)

anon-access = none

鉴权用户访问

auth-access = write

用户信息配置文件(也可以是绝对路径)

password-db = passwd

权限配置文件

authz-db = /source/svn/project/conf/authz

配置好后如下图:

7、/www/svndata/rocschool/hooks/目录下新建一个空白文件,名称为:post-commit 文件,用于配置将svn中的文件同步到您的网站运行目录下

文件里配置如下:

句法 (Syntax)

#!/bin/sh

export.utf8

SVN_PATH=/usr/bin/svn

WEB_PATH=/www/wwwroot/www.rocschool.com

$SVN_PATH update $WEB_PATH --username ‘rocschool’ --password ‘123456’ --no-auth-cache

说明:SVN_PATH为SVN安装目录

WEB_PATH为同步到网站运营目录

其它为配置的帐号密码,这个需要填写您设置的帐号密码进入绑定同步,如刚才我们在/www/svndata/rocschool/conf/password里配置的帐号密码

8、如上完成后,我们需要在SSH终端里输入命令进行同步,把SVN同步库文件到你的网站目录下,如我们配置的/www/wwwroot/www.rocschool.com目录

如果您不进行同步到目录,他是无法进行关联的,你在本地管理软件检出时无法获取到他同步的网站目录下,所以这一步不可少。如下方法操作

句法 (Syntax)

svn checkout svn://47...*/rocschool /www/wwwroot/www.rocschool.com --username rocschool --password 123456

如果如上出错,您可以去掉帐号密码,如下

句法 (Syntax)

svn checkout svn://47...*/rocschool /www/wwwroot/www.rocschool.com

意思为同步服务器svn://47...*/rocschool至/www/wwwroot/www.rocschool.com 目录下 帐号为rocschool 密码为123456

svn://改为你的服务器IP/rocschool 这个是我们服务器建立版本库链接地址,即是服务器地址/www/svndata/rocschool/同时他同步到了你的网站目录下/www/wwwroot/www.rocschool.com

9、完成如上内容后,我们即可在我们本地电脑新建一个目录,然后右键检出内容了,这样就可以增加删除同步服务器网站内容

输入SVN版本库URL进行链接检出操作,然后确定输入帐号及密码后即可。

检出后就可以进行文件增加、修改、提交等操作了。

其中config文件有好多问题,详细的我贴在下面供大家参考。

authz

[groups]
[/]
rocschool=rw

password

[users]
rocschool=123456

serversvn.conf

[general]
anon-access=read
auth-access=write
password-db=passwd
authz-db=authz

还有一个文件post-commit

#!/bin/sh
export LANG=en_US.UTF-8
SVN_PATH=/usr/bin/svn
WEB_PATH=/www/wwwroot/www.rocschool.com
$SVN_PATH update $WEB_PATH --username 'rocschool' --password '123456' --no-auth-cache

感谢大家观看,我们下次见

目录
相关文章
|
2月前
|
Shell 网络安全 开发工具
服务器已经搭建好的项目如何关联至gitee对应仓库并且将服务器的项目代码推送至gitee-优雅草卓伊凡
服务器已经搭建好的项目如何关联至gitee对应仓库并且将服务器的项目代码推送至gitee-优雅草卓伊凡
200 5
|
6月前
|
缓存 安全 网络协议
如何使用Bluetown Cloud服务器及其CDN服务来掩护VPS的真实IP地址。
最终,通过Bluetown Cloud的CDN服务,你的VPS不仅仅是隐藏在一层又一层的保护之下,同时也因为CDN的全球节点而享受到加速访问的优势,无所不在又不被发现,像是一位能在互联网世界中自由穿梭的幽灵特工。
141 14
|
6月前
|
应用服务中间件 网络安全 数据安全/隐私保护
网关服务器配置指南:实现自动DHCP地址分配、HTTP服务和SSH无密码登录。
哇哈哈,道具都准备好了,咱们的魔术秀就要开始了。现在,你的网关服务器已经魔法满满,自动分配IP,提供网页服务,SSH登录如入无人之境。而整个世界,只会知道效果,不会知道是你在幕后操控一切。这就是真正的数字世界魔法师,随手拈来,手到擒来。
347 14
|
6月前
|
物联网
云服务器搭建rttys服务
RTTYS是一款基于Web的串口调试工具,分为服务端(rttys)和客户端(rtty)。服务端负责连接串口设备并提供接口,客户端通过浏览器访问实现远程串口调试。它具有跨平台、易部署的特点,适用于物联网、嵌入式开发等场景,极大提升调试效率。
|
9月前
|
存储 人工智能 安全
做网站如何选择云服务器?(二)服务篇
在现代互联网时代,云服务器成为企业与个人满足业务需求的首选。选择云服务商时需关注多个方面:稳定性与数据保护(如99.95%高可用性、99.999%数据可靠性)、安全防护体系(DDoS防护、入侵检测等)、弹性扩展功能、技术支持体系(24/7支持)、高性价比与灵活付费模式、快速供应与部署能力、多区域覆盖与线路选择、不限流量与IP更换、垂直场景方案(如游戏云、AI训练)及用户评价与案例分析。特别关注不同行业需求,如初创团队的成本控制、大型企业的合规性审查、金融医疗的安全合规等。综合考虑这些因素,才能确保网站高效运行和持续发展。
215 1
|
10月前
|
机器学习/深度学习 人工智能 开发者
DeepSeek服务器繁忙?拒绝稍后再试!基于阿里云PAI实现0代码一键部署DeepSeek-V3和DeepSeek-R1大模型
阿里云PAI平台支持零代码一键部署DeepSeek-V3和DeepSeek-R1大模型,用户可轻松实现从训练到部署再到推理的全流程。通过PAI Model Gallery,开发者只需简单几步即可完成模型部署,享受高效便捷的AI开发体验。具体步骤包括开通PAI服务、进入控制台选择模型、一键部署并获取调用信息。整个过程无需编写代码,极大简化了模型应用的门槛。
493 7
|
10月前
|
存储 弹性计算 安全
阿里云服务器购买后设置密码、安全组、基础安全服务、挂载云盘等流程简介
对于初次选购阿里云服务器的用户来说,通过阿里云推出的各类活动买到心仪的云服务器仅仅是第一步。为了确保云服务器能够正常运行并承载您的应用,购买之后还需要给云服务器设置远程登录密码、设置安全组规则、设置基础安全、购买并挂载云盘等操作之后,我们才能使用并部署自己的应用到云服务器上。本文将详细介绍在阿里云的活动中购买云服务器后,您必须完成的几个关键步骤,助您快速上手并充分利用云服务器的强大功能。
|
11月前
|
开发者 ice
实时云渲染中的NAT转发服务支持个人电脑秒变云渲染服务器
实时云渲染技术广泛应用于XR领域,助力数千客户完成云端部署。平行云推出的转发服务解决了家庭网络动态IP问题,使个人电脑成为实时云渲染服务器,按实际使用分钟数计费,无用户访问不收费。通过配置LarkXR的代理转发Server和ICE Server,开发者可轻松实现互联网访问内网XR应用,极大提升了开发、测试和演示的便利性。
189 11
|
2月前
|
弹性计算 运维 安全
阿里云轻量应用服务器与云服务器ECS啥区别?新手帮助教程
阿里云轻量应用服务器适合个人开发者搭建博客、测试环境等低流量场景,操作简单、成本低;ECS适用于企业级高负载业务,功能强大、灵活可扩展。二者在性能、网络、镜像及运维管理上差异显著,用户应根据实际需求选择。
245 10
|
2月前
|
运维 安全 Ubuntu
阿里云渠道商:服务器操作系统怎么选?
阿里云提供丰富操作系统镜像,涵盖Windows与主流Linux发行版。选型需综合技术兼容性、运维成本、安全稳定等因素。推荐Alibaba Cloud Linux、Ubuntu等用于Web与容器场景,Windows Server支撑.NET应用。建议优先选用LTS版本并进行测试验证,通过标准化镜像管理提升部署效率与一致性。

热门文章

最新文章