最近在做机房收费系统的合作开发,在这个过程中我学习了SVN工具的使用,在此之前我们先了解一下的理论知识——SCM系统。下面时我对SCM系统理论知识的总结。
(一)SCM是什么?
SCM(Software Configuration Management),软件配置管理。说的更直白点,就是版本的控制。它是一门用来记录并控制软件产品数据的管理工具。
(二)SCM主要解决什么问题?
开发人员进行合作的时候,会出各种各样的问题。
1)开发工程师
开发过程中,开发工程师要修改源文件,但是不知道哪个是最新的。版本在A那,还是在B那,是控制不了的;
Make时,经常有错文件的版本。Make,就是最后把大家的工作结果集中到一起,然后做一个完成的编译;
多人修改一个文件,有些人的结果被冲掉了。
程序误删了,只能重写。SCM可以帮我们做好备份;
花了一段时间,终于查出了一个错误,但发现有个同事上周前已经修改过了同样的错误,但是我不知道,造成浪费,这也是所以的“知识管理”不够。
2)项目经理
整个项目由若干部分组成,项目有初期各人做各人的一部分,后期合并连调,但是整个周期很长,达数周甚至数月,开销非常大;