前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >宝塔linux面板搭建SVN控制系统的图文教程

宝塔linux面板搭建SVN控制系统的图文教程

作者头像
李洋博客
发布2021-08-16 16:25:48
1.4K0
发布2021-08-16 16:25:48
举报
文章被收录于专栏:李洋博客李洋博客

记得在大学期间,使用过SVN功能,当时觉得很不错,但是慢慢的接触了FTP之后很久没涉及到svn服务了,今天刚刚在新项目上需要部署新环境,还需要在linux搭建svn服务,其实安装完宝塔我的第一反应是去软件商城搜索svn,别说还真有,只是收费,抱着学习的态度打算在宝塔linux面板上手动安装svn服务,为防止后期还会涉及重新搭建svn,所以记录下此次的安装过程。

宝塔linux面板搭建SVN控制系统的图文教程 第1张
宝塔linux面板搭建SVN控制系统的图文教程 第1张

宝塔安装不赘述了,不会的参考以往的教程,此处省略几百字,安装宝塔,部署环境之后,我们使用SecureCRT或者宝塔面板的终端命令都可以,手动安装svn控制软件。

第一步:

通过yum命令安装svnserve

代码语言:javascript
复制
yum -y install subversion

此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行,如图:

宝塔linux面板搭建SVN控制系统的图文教程 第2张
宝塔linux面板搭建SVN控制系统的图文教程 第2张

第二步:

建立版本库目录,命令如下:(目录可自拟)

代码语言:javascript
复制
mkdir /www/svndata

在svn版本库目录下启动svn,命令如下:

代码语言:javascript
复制
svnserve -d -r /www/svndata

如果命令完成后您的服务器显示“svnserve: E000098: Can't bind server socket: Address already in use”应该是启用了,暂时可以不理会,然后我们再去创建版本库。

创建一个新的版本库baseData,命令如下:

代码语言:javascript
复制
svnadmin create /www/svndata/baseData

安装和部署完成后,我们需要配置相关权限及账号密码,我们先配置svn访问密码,在/www/svndata/baseData/conf/目录下 找到 password 文件添加访问账号密码:

代码语言:javascript
复制
# 用户名 = 密码
talklee = talklee.com
宝塔linux面板搭建SVN控制系统的图文教程 第3张
宝塔linux面板搭建SVN控制系统的图文教程 第3张

账号密码设置完成后我们需要对配置文件设置权限:

在/www/svndata/baseData/conf/目录下找到,svnserve.conf 文件,添加访问权限:

代码语言:javascript
复制
anon-access = read
auth-access = write
password-db = passwd
realm = My First Repository
宝塔linux面板搭建SVN控制系统的图文教程 第4张
宝塔linux面板搭建SVN控制系统的图文教程 第4张

到此,配置已经全部完成,账号信息已经添加成功 更改 svnserver.conf 时需要重启SVN服务才生效,更改authz,passwd文件时则不需要重启服务,

第四步同步库文件:

方法有两种,一种敲代码,不建议这种,我第一次安装这个没有意思,仅供参考吧。

方法一:

代码语言:javascript
复制
svn checkout svn://IP地址/baseData /www/wwwroot/165933.com

baseData文件同步到对应的网站目录,如图,指定之后文件的内容也将同步。

宝塔linux面板搭建SVN控制系统的图文教程 第5张
宝塔linux面板搭建SVN控制系统的图文教程 第5张

方法二(建议使用此方案):

/www/svndata/baseData/hooks/ 目录下新建 post-commit 文件(空白文件,没有后缀)用于将svn中的文件同步到系统运行目录下,代码如下:

代码语言:javascript
复制
#!/bin/sh

SVN=/usr/bin/svn
WEB=/www/wwwroot/165933.com
export LANG=en_US.UTF-8

$SVN update $WEB --username talklee --password talklee.com

WEB指向网站目录即可,这个是自己的不要照搬,粘贴修改代码之后保存,如图:

宝塔linux面板搭建SVN控制系统的图文教程 第6张
宝塔linux面板搭建SVN控制系统的图文教程 第6张

顺手把svn重启命令附上:

查看svn的进程,筛选svn的进程命令:

代码语言:javascript
复制
ps -ef|grep svn

杀死主进程,杀死进程的命令用 

代码语言:javascript
复制
kill -9 进程id

如图ID是3280,就使用 kill -9 3280 ,每个人程序不一样所以id也是不一样的,不要直接使用我这个,重新启动svn,命令:

代码语言:javascript
复制
svnserve -d -r /www/svndata

目录参考您的svn目录,参考教程第一步,还是看不懂就看看图吧,差不多是这个意思,第八行目录错了,别照着敲上去

宝塔linux面板搭建SVN控制系统的图文教程 第7张
宝塔linux面板搭建SVN控制系统的图文教程 第7张

服务器端准备完成,我们使用SVN软件,链接测试,svn地址:svn://ip地址/baseData

宝塔linux面板搭建SVN控制系统的图文教程 第8张
宝塔linux面板搭建SVN控制系统的图文教程 第8张

链接完成后,随便新建了文件,然后右键菜单选择更新,会弹出提示框,输入之前设置的账号密码:

PS:记得在防火墙开放SVN默认端口号:3690

宝塔linux面板搭建SVN控制系统的图文教程 第9张
宝塔linux面板搭建SVN控制系统的图文教程 第9张

上传完成查看网站根目录,刷新如图:

宝塔linux面板搭建SVN控制系统的图文教程 第10张
宝塔linux面板搭建SVN控制系统的图文教程 第10张

整理再说下,本地上传的文件可以的网站目录看见,但是网站目录现有的文件,无法在本地SVN文件夹中看到,如果想要同步,把服务器文件删除,在本地SVN文件夹中添加,然后更新即可达成同步的效果,好了,太折磨人了,我估计同步文件的命令貌似可以省略,直接新建文件即可,但是未测试,等后期安装的时候看看是否可行。

另外因为本地测试项目所需给了文件夹一个777权限,你们大可不必,这个权限风险太大,要慎重。教程写完了,脑细胞死了一大堆啊,太难了,有问题可以留言反馈吧,反正我也解决不了,我去喝杯咖啡,歇会,另外此次安装仅限于在宝塔linux面板安装,其他系统未测试。

到此,配置已经全部完成,账号信息已经添加成功 更改svnserver.conf时需要重启SVN服务才生效,更改authz,passwd文件时则不需要重启服务

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第一步:
  • 第二步:
  • 第四步同步库文件:
  • 顺手把svn重启命令附上:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档