您的位置:首页 > 其它

从传统的版本管理看SVN

2017-08-07 21:31 645 查看

引言

        
版本控制工具估计大家都不陌生,只要稍微做过一两个项目的就会用到svn或者其他的版本控制工具。下面从版本管理工具的起源,发展,以及种类,代表作品等等,好让大家有一个直观的了解

版本管理工具概念

        
相信写过论文的同学都有这样的经理,文章改了一遍又一遍,但为了区分只好不断的重命名,比如说“毕业论文初稿”、“毕业论文第一版”、“毕业论文第二版”、“毕业论文第三版”……毕业论文最终版”、“毕业论文最终不改版”……这就是传统的版本管理,因为它做到了这么几点:
          1、保存了每一个版本
          2、有一个最新版本
          3、可以回退到任何一个版本(因为每个文件都没有被删除)
但是缺点也显而易见:
         
1.虽然我们保存了每个版本,但是两个版本之间可能只有一点点的区别,这样无形当中浪费了磁盘资源
         
2.每个版本没有标注更改了那些内容(必须手动打开看才能知道)
         
3.文件多不方便管理。
         
4.其他
         
这只是简单的word文档,简单的论文,再多也多不了多少,但当我们在编写代码的时候每天都会有很多版本出现,如果我们每次都新建一个文件重新来写的话那我们岂不是要疯掉了,于是,“版本管理工具”的概念应运而生。

版本管理的演变

1、文件管理阶段(严格意义上说这个不算)

    就是上面我们说的这种情况,见下图



2、集中式管理阶段

    典型的就是cvs和svn。cvs的全称是Concurrent Version System(协作版本系统),它的第一个版本出现的时间是1990年,是C语言开放源代码的。官网:http://www.nongnu.org/cvs/,svn的全称是subversion。svn比cvs更棒,初始版本是2000年,前段时间(2014年5月)又出了一个稳定版本,一直在更新壮大,它的出现就是用于取代cvs的。




3、分布式管理阶段

    出现在2005年,它的出现很好的解决了linux系统维护的工作。同样是由我们可爱的Linus Torvalds编写的,据说只花了两周。



SVN服务端的部署以及签出操作

    在介绍SVN的使用之前先介绍几个相关的概念
    1.仓库(repository),就是服务器端的数据。
    2.签出(checkout):英语写成check out,意思就是从服务器拉取数据。
    3.提交(commit):svn中commit是直接将数据提交到服务器。所以,如果没有网络的话svn就commit不成功,这个尤其注意。
    4.更新(update):这个是svn中的概念,用于将服务器端的数据更新到本地。
    介绍完概念之后,下面来给大家介绍SVN服务端的部署以及签出操作
    按照我们之前的概念,先要部署服务器。我们先下载一下SVN,可以进入官网去下载。服务器的部署还是比较简单的,这里就不做过多介绍了。考虑到使用svn的一般都是windows用户,我们就在windows7下部署svn服务器吧这里笔者选择的是VisualSVN这款软件,下载地址请点击这里,运行后我们看到下图这样的画面



    
    现在我上面已经运行了一个仓库,所以我们看到最后一项Repositories是有一个的,如果你本地没有,就需要创建了。创建成功我们可以看到如下图所示效果

   


    双击我们建好的仓库,可以看到http地址,如下图



    然后我们到浏览器中输入一下,看到如下图所示效果,就说明成功了



    当然,如果你想在远程连接这台服务器的话,需要将相对路径改为ip地址。接下来,我们就可以将服务器端的代码文件拉下来了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: