学习PHP的时候同时应该学习SVN的使用

时间:2009-11-13     作者:smarteng     分类: PHP相关


相信很多新手在初学PHP的时候和我一样重心放在,PHP程序的开发,html代码,数据库操作,相关开发工具使用等等,往往忽略了学习版本控制软件的使用。为什么今天在新手区提出这个问题,原因就在于,想让广大朋友在使用php作为coder生涯开始的时候的能得到正规化的发展及少走一些弯路,我是走过了,这里分享我的经验,希望大家看过之后能有些心得,少走弯路。

     1.为什么我们要用版本控制[break]

      可以说在一些小公司,或者一些不是特别依赖技术的公司,缺乏技术管理人才,由于自身的局限性,里面的开发人员往往在开发的时候也是具有很大的局限性。加上人力,周期的限制,很多都不采用版本控制,像我之前的公司,大家都是在一台测试服务器上做开发,调试端在服务器。这样有什么问题?第一,很可能我们同时几个人在修改一个页面而相互不知情,这样后保存的人很可能覆盖掉前者所做的改动,如果之前没有备份,那结果是可怕的。想避免,你就要等别人改完,这是开发就不能并行操作。第二,当你做了大量的修改,由于需求的变化,我们很有可能要将代码改回之前的样子,假设只有20行代码,OK,你手工凭记忆改,2000行呢?你记得你改了哪些吗?更惨点我见过开发完一个项目结果测试服务器被人误删了数据,2个月的辛苦努力白费了。使用版本控制,我们完全可以很好的解决以上问题。

   2.什么是版本控制

  简单点来说,版本控制就是时间机器,它可以记录你对文件的每次更改,这样,就算你在昏天黑地的改了几个月后老板说不要了,还是按照过去那样,你也不会抓狂,简单的恢复版本操作就搞定一切。具体概念,大家还是查阅相关资料。

  3.为什么使用SVN

  目前的版本控制软件主要有MS 的VSS,开源的CVS和SVN,zendIDE自带CVS,不过CVS有很多局限性,比如它只记录单个文件的版本,不支持文件的删除,添加的版本控制,针对CVS的局限性,SVN就应运而生了,同时SVN可以由apache带动,直接通过http协议在更新仓库文件。对于这样的组合是非常完美的。至于VSS个人觉得很难用,而且效率低下,也不跨平台。所以坚决推荐SVN。通过SVN调试环境是每个开发成员的客户机,每个成员可以通过仓库的更新直接获取其他成员的新文件和改动,对于多人修改了同样的代码可以做出冲突提示,在发生问题时也可以轻松找到是谁改了哪行代码。这样执行并行开发,效率非常高,同时只可以很好的备份代码。

   讲了这么多SVN的好处只是希望各位新手能尽量按照规范的流程做开发,这对于自身的发展很有好处。最后还是祝大家学习愉快。