十步部署SVN到线上

作者: 恒动力 | 来源:发表于2018-05-29 15:47 被阅读36次

    一、说明:
    SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。

    集中式代码管理的核心是服务器,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后开发,最后解决冲突,提交。所有的版本信息都放在服务器上。如果脱离了服务器,开发者基本上可以说是无法工作的。下面举例说明:


    开始新一天的工作:
    1、从服务器下载项目组最新代码。
    2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。
    3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。
    这就是经典的svn工作流程,从流程上看,有不少缺点,但也有优点。


    二、存储类型格式:
    CVS是个基于RCS文件的版本控制系统。每个CVS文件都不过是普通的文件,加上一些额外信息。这些文件会简单的重复本地文件的树结构。因此,不必担心有什么数据损失,如果必要的话可以手工修改RCS文件。
    SVN是基于关系数据库的(BerkleyDB)或一系列二进制文件的(FS_FS)。一方面这解决了许多问题 (例如,并行读写共享文件)以及添加了许多新功能(例如运行时的事务特性。)。然而另一方面,数据存储由此变得不透明。


    三、安装:
    我们可以使用 yum install subversion 命令进行安装。
    [runoob@centos6 root]$ su -
    密码:
    [root@centos6 ~]# yum install subversion
    已加载插件:fastestmirror, security
    设置安装进程
    Loading mirror speeds from cached hostfile

    • base: mirrors.aliyun.com
    • epel: mirrors.neusoft.edu.cn
    • extras: mirrors.zju.edu.cn
    • updates: mirrors.aliyun.com
      解决依赖关系
      --> 执行事务检查
      ...

    安装成功之后,执行 svn --version 命令。
    [root@centos6 ~]# svn --version
    svn,版本 1.6.11 (r934486)


    四、SVN启动:




    五、编辑svnserve.conf



    六、在hooks文件夹下创建post-commit文件



    七、启动SVN服务



    八、使用Windows的svn连接,并测试上传更新







    九、自动备份脚本




    十、设置每天自动备份(每晚23点59分自动备份),备份到/server/backup/svn/



    相关文章

      网友评论

        本文标题:十步部署SVN到线上

        本文链接:https://www.haomeiwen.com/subject/hkkajftx.html