日常啰嗦

还好在第一篇文章里就列好了接下来的主线及要写的知识点,不然都不知道要写什么东西了,开篇里已经列了基础篇要讲svn和git的知识点,所以这一篇就写一下版本控制。

项目实际效果展示在这里,账密:admin 123456
下载地址,点这里
github地址,在这里

版本控制的定义

维基百科的解释:版本控制(Revision control)是维护工程蓝图的标准作法,能追踪工程蓝图从诞生一直到定案的过程。此外,版本控制也是一种软体工程技巧,借此能在软体开发的过程中,确保由不同人所编辑的同一程式档案都得到同步。

由这个概念中我们得出两个版本控制的关键点,一个是记录,一个是同步。

 

为什么要用版本控制?

    没有版本控制系统的话,代码可能被别人或自己不小心覆盖或遗失、也不知道是谁因为什么原因改了这段代码、也没办法可以复原回前几天的修改。有了版本控制系统,开发人员只要将每次开发的变更都纪录(Commit)起来,并且透过版本控制系统中进行更新。

    每个人都在修改、添加、删除着自己本地硬盘上的代码,当他们把这些代码汇总起来时,麻烦出现了,总不能每次都去copy代码然后把文件传给其他人。还有,到底谁改了哪些文件,具体是文件里的哪部分被改动过?一个人的修改会不会把另外一个人的修改给覆盖掉?上线前,代码汇总的工作变得非常危险,需要非常小心,一旦出错后果不堪设想,而且这种情况下,大家的工作不仅仅是开发,无形中,给所有人增加了很多工作量,效率将会变低,如果某个地方出错,可能代码汇总的工作又要重来一遍。这只是两三人的小团队,如果是几十人几百人的大团队呢?那将会是噩梦,当然,几百人的团队也不可能出现这种情况,我们只是做一个假设。

    如果这个团队采用了版本控制。我们可以浏览所有开发的历史纪录,而且作任何修改都不再害怕,因为你可以轻易的复原回之前正常的版本,版本控制工具也会在每次提交的时候主动合并所有人的修改并解决可能发生的冲突,每个人手里一直都是汇总好的代码。当开发进行到一定阶段,可以直接拿去测试,不需要再有额外的工作来浪费时间。另外,你还可以知道,程序的某个Bug是怎么出现的,是被哪位同事,在哪个时间点造成的,最重要的一点是,不怎么需要刻意去去可以问一下开发人员进行到哪一步,通过版本控制,掌握团队的开发进度,对整个开发流程有很大的帮助。版本控制工具中也有很多其他功能,我们也可以透过分支和标签的功能

网友评论