svn个人开发环境搭建
Linux-Centos9-stream安装svn搭建个人开发环境
基于Linux-Centos9-stream讲解
来自 文正耕耘 的第 02 期知识分享Linux服务器搭建SVN开发环境
作者 | 文正耕耘(ID:dywangk)
这个公众号还没gg,有时间就会更新。
-
开发工具:Spring Tool Suite4
-
版本控制工具:SVN
-
服务器测试环境:Linux Centos9-Stream
一、SVN安装
安装方式:
-
二进制包安装(binary packages)
-
源码包安装(source packages)
RHEL系列使用yum命令进行安装:
yum install subversion
yum install mod_dav_svn
SVN获取地址:https://subversion.apache.org/
SVN历史版本获取:https://tortoisesvn.net/status.html
二、SVN客户端获取
1.获取客户端
RHEL系列安装参考第一步安装方法。
官网新版本源码包source release,建议使用长期支持(LTS)的版本:
1.Apache Subversion 1.14.2 LTS
2.Apache Subversion 1.10.8 LTS
有多种语言包支持,Windows平台可以下载后缀为zh-cn中文语言包。
获取地址:https://subversion.apache.org/download.cgi
如果官网下载太慢,可以下载我准备好的几个版本,下面是客户端安装文件地址
链接: https://pan.baidu.com/s/1rjHIfQvQSXcEXagbpBUPEQ
提取码: 75s4
2.开放相应端口
注意:开放相应端口,如果使用REHL6或者Centos6.x版本
iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
永久生效,加入到配置文件:vim /etc/sysconfig/iptables
iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
记得重启防火墙服务
service iptables restart
REHL7或者以上,使用firewalld-cmd管理
firewall-cmd --zone=public --add-port=3690/tcp --permanent
看到success,代表端口加入成功。
重载firewall或者重启
firewall-cmd --reload
systemctl restart firewlld.servcie
当然,你也可以临时关闭进行测试
RHEL7或者centos7以及以上临时关闭firewalld服务
systemctl stop firewalld.service
RHEL6 或者centos6.x临时关闭iptables服务
service iptables stop
3.连接svn服务器
测试时,可以临时关闭防火墙管理工具服务,或者放通相应端口。
使用TortoiseSVN,输入地址svn://(远程服务IP地址) ,不出意外输入用户名和密码就能连接成功了。如果出现错误,请返回上面排查错误步骤,基本上是配置文件以及仓库地址问题。
默认端口号为:3690,如果更改了,就用修改后的端口
示例:svn://192.168.245.132/trunk/demo
使用svn checkout命令检出:
svn checkout svn://192.168.245.132/trunk/demo
4.服务器使用svn命令
输入svn或者svnadmin按空格,然后使用TAB键快速提示命令
svn检出命令:chekout
检出测试项目demo
[root@Centos9-Stream workspace]# svn checkout svn://192.168.245.132/trunk/demo
认证领域: <svn://192.168.245.132:3690> /opt/test/svn_work
“admin”的密码: ******
-----------------------------------------------------------------------
注意! 你的密码,对于认证域:
<svn://192.168.245.132:3690> /opt/test/svn_work
只能明文保存在磁盘上! 如果可能的话,请考虑配置你的系统,让 Subversion
可以保存加密后的密码。请参阅文档以获得详细信息。
你可以通过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,
来避免再次出现此警告。
[root@Centos9-Stream workspace]# ls demo
HELP.md mvnw mvnw.cmd pom.xml src target
三、SVN仓库配置
1.创建svn仓库
题外话:官方推荐的命名仓库,trunk主干 branches分支 tags标记
1.1 通过svnadmin命令创建仓库:
cd /opt/test/
svnadmin create svn_work
进入看到里面的配置文件:
ls svn_work
1.2 最主要的配置文件在conf目录下:
authz --> 权限验证配置文件
passwd --> 密码验证文件
svnserve.conf --> 服务验证配置文件
2.配置authz权限文件
vim conf/authz
赋予admin管理员读和写的权限
[groups]代表配置用户组,参考下图配置额外拓展
3.配置passwd密码文件
vim conf/passwd
密码设置,左边为用户名,右边为密码
4.配置svnserve.conf服务配置文件
vim conf/svnserve.conf
按下图所示取消#号
四、SVN启动与停止
1.启动 & 停止
启动命令
svnserve -d -r /opt/test/svn_work
systemctl start svnserve.service
查询svnserve服务,可以观察到3690已经被监听
[root@Centos9-Stream conf]# netstat -tlunp | grep svnserve
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 3849/svnserve
2.排查错误
遇到错误:svnserve[3810]: svnserve: E000098: 不能绑定服务器套接字: 地址已在使用,关闭使用svnserve -d -r /opt/test/svn_work开启的进程,然后启动可以解决。
查询出占用的进程号:
[root@Centos9-Stream conf]# netstat -tlunp | grep svnserve
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 3344/svnserve
暴力结束进程:
[
命令格式:kill -9 pid号
例如:kill -9 3344
再次使用命令:svnserve -d -r /opt//test/svn_work,同样会提示错误 svnserve: E000098: 不能绑定服务器套接字: 地址已在使用
遇到不能存在xx directory,可以手动创建目录试试。
svnserve[3380]: svnserve: E200009: Root path '/var/svn' does not exist or is not a directory
systemd[1]: svnserve.service: Control process exited, code=exited, status=1/FAILURE
五、SVN配合JavaEE for Eclipse使用
如果你问我为啥不使用IntelliJ idea作为讲解,问就是我很懒,IntelliJ idea社区版没有springboot相关一些插件功能,并且JavaEE for Eclipse可以免费使用。
温馨提示:如果你在大公司,一般公司是购买了正版授权的,请不要使用破解软件。
1.Spring Tool Suite4安装svn插件
使用Spring Tool Suite4,其实是eclipse for JavaEE安装了spring相关插件,原生带有Git插件。
eclipse安装SVN向导:https://www.eclipse.org/subversive/installation-instructions.php
Subversive Plug-In插件地址:https://download.eclipse.org/technology/subversive/4.8/release/latest/
subversive-connectors插件地址:https://osspit.org/eclipse/subversive-connectors/
打开eclipse后者spring tool suite4依次找到:Help --> Install New Software
Available Software:输入上述插件地址进行安装
如果没有网,或者安装太慢。可以采取下载离线包。进行离线安装。
2.SVN插件安装成功后显示
新版本SVN插件安装完成后显示SVN Version Control(team)
SVN功能列表
老版本安装SVN插件,当时使用Eclipse for JavaEE
Spring Tool Suite4 完成提交至远程SVN仓库
提交项目:现在项目右键找到Team,选择share project,选择SVN,输入远程仓库地址即可。
-
下图左侧上半部分Package Explorer为项目区域,可以看到版本号,如果进行相应配置,可以看到具体修改时间。
-
下图左侧下半部分Boot Dashboard为springboot本地控制面板。
-
底部右侧为功能面板窗口,可以调出History历史提交信息。
3.SVN项目检出
输入svn仓库地址:svn://192.168.245.132/trunk/demo
01 STS4从SVN服务器拉取项目
02 STS4从SVN服务器拉取项目
-
选择创建一个新的仓库地址
-
选择历史SVN版本仓库地址
03 STS4从SVN服务器拉取项目选择Revision修订版本方式
会的越多,才发现原来不会的更多,知识宝库是慢慢积累起来的。
最后,又到了无耻环节,他喵的点个关注呗。
—END—
感谢大佬鼎力支持!