暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux-Centos9-stream安装svn搭建个人开发环境

文正耕耘 2022-12-13
1112

基于Linux-Centos9-stream讲解

来自 文正耕耘 的第 02 期知识分享Linux服务器搭建SVN开发环境

作者 | 文正耕耘(ID:dywangk


这个公众号还没gg,有时间就会更新。

  1. 开发工具:Spring Tool Suite4

  2. 版本控制工具:SVN

  3. 服务器测试环境:Linux  Centos9-Stream


一、SVN安装

安装方式

  1. 二进制包安装(binary packages)

  2. 源码包安装(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


                                      暴力结束进程:

                                        [root@Centos9-Stream conf]# kill -9 3344

                                        命令格式: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,输入远程仓库地址即可。

                                        1. 下图左侧上半部分Package Explorer为项目区域,可以看到版本号,如果进行相应配置,可以看到具体修改时间。

                                        2. 下图左侧下半部分Boot Dashboard为springboot本地控制面板。

                                        3. 底部右侧为功能面板窗口,可以调出History历史提交信息。

                                         


                                        3.SVN项目检出

                                        输入svn仓库地址:svn://192.168.245.132/trunk/demo

                                        01 STS4从SVN服务器拉取项目



                                        02 STS4从SVN服务器拉取项目

                                        1. 选择创建一个新的仓库地址

                                        2. 选择历史SVN版本仓库地址


                                        03  STS4从SVN服务器拉取项目选择Revision修订版本方式



                                        会的越多,才发现原来不会的更多,知识宝库是慢慢积累起来的。

                                        最后,又到了无耻环节,他喵的点个关注呗。

                                        —END—

                                        文章转载自文正耕耘,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                                        评论