技术资料 - 源代码管理规范

  • 刚刚为单位整理了一份粗浅的源代码管理规范,请各位大侠批评指导。
  • 一、 约定术语
  • 名称 英语 缩写 备注
    Visual SourceSafe Visual SourceSafe VSS 目前版本8.0
    Visual Studio Visual Studio VS 目前版本2005
    国泰新点(软件框架) Epoint    
    工作目录 Working Folder    
    签出 Check out    
    签入 Check in    
    表示层 User interface UI  
    业务逻辑层 Business Logic BL  
    数据访问层 Data Access DA  
    前台 Foreground FG  
    后台 Background BG  
    解决方案 Solution   VS2005
    项目 Project   VS2005
  • 二、 流程管理
    VSS系统安装、部署
    1. 准备好VSS服务器(局域网),指定共享目录作为代码数据存放路径。为每个开发人员设置Windows账号,并设置对共享目录的读写权限。
    2. 每个开发人员用分配到的Windows账号打开VSS共享目录,并映射为本地驱动器。
    3. 项目管理员和每个开发人员分别在本地安装VSS 8.0,并在VS中设置好代码管理器(目前仅用局域网共享方式连接)。
    4. 完成VSS服务器的目录规划(具体参考结构规范)。
    项目管理
    1. 项目管理员负责在本地创建目标系统的空Project或框架Project(VS2005),然后将该系统所有Project按照结构规范添加到VSS服务器上。
    2. 项目管理员设置管理员账号和开发人员账号,并设置各账号的权限。
    3. 开发人员从VSS服务器获取目标系统对应的Project源代码,并根据各自情况组合成Solution。(首次获取代码前需设置VSS Working Folder)。
    4. 开发人员可以自主添加的项:普通页面、引用、图片资源和由框架自动生成的Class;开发人员需要向项目管理员申请添加的项:新的Project、目录、样式表、新的业务逻辑Class、配置文件、Masterpage、用户控件和自定义控件等;删除别人创建的文件或1周之前的文件需向管理员申请。
    5. 项目管理员根据项目进度安排定期备份VSS数据库。
    6. 项目管理员定期运行Analyze工具(或Project出现异常时及时运行Analyze和修复工具)。
    7. 项目经理定期运行Admin->tools->cleanup temp directory 来清除临时目录的内容。运行之前,要保证没有人使用VSS和VSS administrator。
    8. 若项目分阶段开发实施,项目管理员做好每一阶段的版本标签(Label)和备份。
    9. 项目结束后开发人员签入所有文件,由项目管理员负责发布系统。
    10. 项目完成后项目管理员锁定数据库,其他人员需要对项目修改时先向管理员申请解锁。
  • 三、 结构规范
    1. 所有代码均放到同一个VSS数据库中。(数据库满3G后完全独立的系统项目开始放置新的数据库中,以年为单位)
    2. 目录层次如表所示。一、二级目录事先约定,三级目录为项目名称。
    3. 若多个系统共享一个中间层,则将中间层放主后台系统一侧。
    4. 仅签入Project,禁止签入Solution。项目成员根据自己需求组合成各自的解决方案。
    5. 建议统一本地目录。(获取代码前统一设定VSS根目录对应的Working Folder)。
  • 一级目录(分类) 二级目录(系统名称) 三级目录(项目名称) 备注
    EpointBg (所有在OA中可见模块) 人事代理 User Interface  
    Business Logic  
         
       
    统一用户平台 UI Foreground  
    Business Logic 中间层放后台系统一侧
    EpointFg (所有基于Epoint的网站前台) 人事代理    
    Business Logic  
    户口挂靠    
       
    统一用户平台   前台
    EpointWeb (所有基于Epoint的网站发布系统)     网站信息发布系统
       
       
       
    RcxxSys (所有基于自主框架的系统) 职称网上申报 UI Foreground  
    UI Background  
    Business Logic  
    530申报    
       
    Other (其他系统) 军转数据库更新    
       
  • 四、 操作要点
    1. 同数据库备份一样,周期性备份源代码数据(备份VSS数据,而不是本地代码)。
    2. 运行Analyze和修复工具前先锁定数据库。
    3. 不要同时运行备份程序和Analyze。
    4. 注意拆分和共享。
    5. 除了常规的项目之外,建议将数据库结构文件和项目文档作为独立的项目签入VSS。
    6. 尽量签出少的文件。除非特别需要,否则不要签出整个项目或目录。
    7. 及时签入修改过的文件(特殊情况除外)。
    8. 签入之前必须确保代码没有错误(通过编译)。
    9. 将页面文件和对应的CS文件一起签出,而不是单独签出CS文件。
    10. 每天第一次修改程序前或发布项目之前获取最新项目文件,每天收工之前确认所有修改过的文件已经签入。
    11. 获取时发现本地版本和服务器版本不一致时,请根据版本号进行操作。
    12. 修改别人创建的文件时必须填写相关说明,用注释的方法删除原有代码。
    13. 修改别人创建的文件尽量使用重载的方式,而不是直接修改已有程序。
    14. 统一各开发人员的VSS操作模式。(Check in Check out方式)