客户工程源码管理研究

  作为一个高度定制化的系统,对于不同的客户,我们的DVB平台源代码有着很大的差异,这直接导致了代码管理的混乱及同步困难。很多问题,在一个客户工程上解决后由于没有及时回写到major code导致在另外一个客户上重复发生。

  目前,我们的代码是采用SVN管理。之前我们维护一份major code,客户的code会branch出来. 有重大问题会上到major code上,客户的code会同步此份code的修改。但是几十个客户的软件要同步起来,工作理会非常大。这导致了很多项目负责人都不会及时的更新修改。

  要如何解决这个问题呢?客户定制化的软件与Major code之间必定会有公共的地方,如何使这么多的客户都基于一版code维护,同时又不影响定制化的内容。通过SVN的脚本,简单的解决了这个问题。首先是抽取与Major code有差异的目录,这部分主要集中在application层,middleware/driver/kernek层的修改比较少,可以多个客户维护一份code. 于是目录级的维护,而不是整份代码的维护较好的解决了问题。对于定制化程度较高的目录,由客户负责人分别维护,再合并相同部分就可以了。这样大大减小了代码的维护量。

你可能感兴趣的:(源码)