• 服务器端 安装svn


      趁着这波比较闲的时候来划一波水,想起自己那都快生会的腾讯云服务器 到现在还不能通过版本控制系统上传文件,于是趁这波功夫在服务器上安装个svn来管理代码。

        首先就简单的介绍一波 svn :

          首先svn不同于GIT它是集中式的,即只有一条主线并没有分支,Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。(来自百度)

           他的常用命令有

              Commit(提交): 当你已经修改了代码,你就需要Commit到线上仓库

              Update (更新): 当你很久没更新代码后,使用update更新下 你的打码就会与线上同步

        哦豁,差点跑题了,这里我要写的是在服务器上安装svn,好吧 ,下面我们就进入正题了 ,下面的步骤我就当我们已经配置好服务器环境了 (在这里我是基于 CentOS 6.8 64位 php + apache搭建的服务器环境)

            你可以用xshell  操作linux系统  这里我是用腾讯云自带linux登录,登录linux实例操作的

                                     

          

           1.   首先我们在全局输入 yum -y install subversion (安装svn)

           2.   安装成功后我们就开始配置svn

             2.1 首先建立一个线上的版本库

               使用 mkdir /svn   (这里我在根目录上建立一个svn目录)

             2.2 使用 svnserve -d -r /svn (启动svn服务 其中svn是目录位置)

                svnserve -d -r 目录 --listen-port 端口号  其中端口号可以省略(不填默认3690)

             2.3  然后在建立一个版本库   svnadmin create /svn/www

             2.4 配置允许用户rsync访问
               使用  cd /svn/www/conf 找到conf文件

              通过 vi  svnserve.conf 进入配置编辑(将箭头指向的位置注释解了,且修改的文件前面不能有空格,否则启动svn server出错)

              

              

            2.5  保存完上面步骤后  再使用vi authz配置用户权限以及那些用户可以使用

                

             2.6  保存完上面步骤后  再使用vi passwd配置用户上传下载密码

              

            2.7  使用  svn checkout svn://IP地址/svn所在的文件夹例如上面的www --username=配置的用户名

               

              2019/08/13-----------------补充----------------------------

              checkout的时候出现  svn: Can't connect to host '123.x'x'x'x.xxxx.180': Connection timed out  无法响应 可能原因有

                1.检查各项配置文件是否有空格存在  ------这个问题出现的可能比较少

                2.服务器防火墙拦截了3690端口这是需要配置

                  进入 vi /etc/sysconfig/iptables 编辑

                  在文件内加上一条允许3690端口通过的代码

                  

                  最后使用  service iptables restart  重启防火墙

                3.云服务器设置了上安全组  这事需要在阿里/腾讯云平台安全组面板出口处添加规则  让TCP:3690通过即可(最好入口处也添加相同规则)

                                           

               -------------------------------补充----------------------------

            2.8  现在你可以试试下载文件到桌面(这里还没用 将svn 与web项目挂起钩子 所有拉下来的文件是空的,这里我使用svn小乌龟下拉的 svn://ipdi地址/文件目录例如www)
              

            

            2.9  将svn 与web项目关联起来就是钩子(首先需要进入svn 库下的 hooks文件夹)

              例如我的svn库是在  ---  /svn/www/hooks
               hooks文件夹下有现成的配置模板我们使用如下语句 copy一份至配置文件即可

                 cp post-commit.tmpl post-commit

                复制创建文件夹后开启  755权限(可自行找度娘)

                 sudo chmod -R 755 post-commit  (授权语句)

              之后vim  post-commit进入文件如下配置

              

      以上就是svn的配置以及挂钩过程  ,之后你可以测试下 使用  svn co svn://IP/www --username jzq --password 密码  查看到有些什么文件上传了上来

  • 相关阅读:
    git版本库管理介绍,撤销git pull操作
    【laravel5.4】自定义404、503等页面
    【laravel5.4】{{$name}}、{{name}}、@{{$name}} 和 @{{name}} 的区别
    python 了解一点属性的延迟计算
    python 了解一下__dict__
    excel怎么把一个sheet的 全部内容打印到一页纸上
    python 简单了解一下 描述器
    python 调用父类方法, 重写父类构造方法, 不显式调用,会报错
    Python 今天抽空学习了@Property
    python 语法糖是什么意思
  • 原文地址:https://www.cnblogs.com/jjq-exchange/p/10683998.html
Copyright © 2020-2023  润新知