转自:http://www.cnblogs.com/BraveCheng/archive/2012/07/02/2573617.html

协同开发中SVN使用规范试用

目标,要求

本次svn提交规范主要针对当前项目中出现的svn管理难,开发流程控制难掌控,项目进度记录不准确等问题而提出。要求每个角色都要进行规范化svn作业。

目录结构与开发模式

分散式分支开发模式原理

Svn://project/

+trunk/(主开发目录)

+branches/(分支开发目录)

+dev_1.0_function1(功能性分支1)

+dev_2.0_function2(功能性分支2)

+tags(存档目录,不允许修改)

a)     1.0的开发,做一个dev_1.0的功能性分支

Svn://project/

+trunk/(不承担开发任务)

+branches/

+dev_1.0_function1

+tags

b)     1.0功能开发完成,合并分支到主干

Svn://project/

+trunk/(merge from branch dev_1.0_function1)

+branches/

+dev_1.0_function1(开发任务结束,冻结)

+tags

c)      测试完成,根据主干做一次1.0的tag

Svn://project/

+trunk/(merge from branch dev_1.0_function1)

+branches/

+dev_1.0_function1(开发任务结束,冻结)

+tags

+tag_release_1.0(copy from trunk)

d)     1.0版本结束,做下一个版本的开发2.0

Svn://project/

+trunk/(merge from branch dev_1.0_function1)

+branches/

+dev_1.0_function1(开发任务结束,冻结)

+dev_2.0_function2(2.0的开发)

+tags

+tag_release_1.0(copy from trunk)

e)     1.0版本出现bug,直接在dev_1.0版本上修复

Svn://project/

+trunk/(merge from branch dev_1.0_function1)

+branches/

+dev_1.0_function1(bugfix)

+dev_2.0_function2(2.0的开发)

+tags

+tag_release_1.0(copy from trunk)

f)       选择性的进行代码合并

使用规范

命名规范

分支名称采用固定名称与下划线结合方式进行功能性分支描述如:dev_1.0_crm。

存档名称统一采用tag_release_版本的方式。

提交规范

一、        提交之前先更新

在每次提交文件的时候,先进行必要的更新操作,因为,有可能在你修改文件的期间,别人也修改了同样的文件,那么本次的提交很可能会失败。

二、        保持原子性的提交

每次提交的时间尽可能的短,如当你修改了UI界面,完成了功能小细节,确认了bug完善就提交代码。

三、        不要提交本地配置文件,自动生成的文件,自己不明白的文件

本地环境因人而异,因此就有了不同的配置文件,缓存生成文件等,在提交的时候,尽可能检查提交的内容是否是包含了类似不必要的文件。

注释规范

每次提交必须书写明晰的标注

在项目中,如果没有注释,会导致管理人员不能清晰的把握每次的项目提交的概要,bug管理与文件不对称,难以掌控项目的进展等问题,因此建议填写注释,同时不能填写一些无效,无用的信息。填写好的注释应该是能概要的描述所提交的文件的基本功能的信息,也建议使用下面的规范。

注释规范写法,提交前加注释标签

  • Todo:     任务清单

对于需求性的功能使用todo前缀标签,如加入经纪公司模块,使用类似以下语句:Todo:    增加经纪公司模块

  • Bugfix:: bug修复

对于系统bug,等信息提交前加上bugfix标签,如修复待遇显示不正确:Bugfix:  修复期望工资待遇显示错误bug

  • Junk:         零碎碎片

其他的一些无效的信息修改,如静态资源的压缩:Junk:      css,js文件压缩

效果图:

【转】协同开发中SVN使用规范试用的更多相关文章

  1. 协同开发中SVN的使用建议

    协同开发中SVN的使用建议 1.  注意个人账户密码安全 各员工需牢记各自的账户和密码,不得向他人透漏,严禁使用他人账户进行SVN各项操作(主要考虑每个SVN账号的使用者的权限范围问题).如有忘记,请 ...

  2. 更新协同开发工具SVN的链接的服务器地址

    公司内的协同开发工具使用的SVN,因为换了个服务器需要重置SVN地址,一下子有点措手不及. 研究了下SVN的操作菜单,发现有一个功能“重新定位”,应该就是我要找的了,试了一下果真没错,记录下 第一步: ...

  3. web前端开发中的命名规范

      (一)主体 头:header 内容:content/container 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中: ...

  4. SVN二次开发——让SVN、TSVN(TortoiseSVN)支持windows的访问控制模型、NTFS ADS(可选数据流、NTFS的安全属性)

    SVN二次开发 ——让SVN.TSVN(TortoiseSVN)支持windows的访问控制模型.NTFS ADS (可选数据流.NTFS的安全属性) SVN secondary developmen ...

  5. 华为如何实现基于Git的跨地域协同开发

    跨地域开发的需求其实由来已久,在IT/互联网发展的早期就已存在,只不过限于当时网络环境的因素,无法在线上有效的完成协同工作,所以没法实际开展.而随着近十年网络的快速发展,跨地域协同开发线变得可能而且越 ...

  6. 【SVN技巧】如何协同开发LabVIEW代码 1

    前言 在我们工作中,必然会遇到代码的多个版本问题,也必然会遇到版本控制问题.如果所在的公司具有良好的项目管理体系或者软件管理体系,那么其版本控制应该有严格的使用规范,如果没有则作为一个上进好青年也应当 ...

  7. 2014-07-25 改进自定义菜单与使用SVN进行协同开发

    今天是在吾索实习的第13天.今天没有做过多的代码设计,只进行了一些代码的分析与进一步优化.其中,发现创建自定义菜单的关键代码书写可分为两部分: JSON格式的字符串在.net中的语法书写: strin ...

  8. ios 开发中使用SVN管理代码

    今天新公司需要使用SVN管理代码,就在网上查看相关的资料,现在把相关用法记录下来: 1.使用的是这个软件Cornerston 网上有很多相应的下载链接,可以去查看 2.下载安装之后,首先需要添加仓库r ...

  9. iOS开发(OC)中的命名规范

    开小差:最近发现自己有一个经验主义的毛病,不太容易接受新的知识,这对从事技术研发的人来说不太合理,需要改之. 正文:通过读写大量代码我有自己的一套编程思路和习惯,自认为自己的编码习惯还是不错的,代码结 ...

随机推荐

  1. Raft与MongoDB复制集协议比较

    在一文搞懂raft算法一文中,从raft论文出发,详细介绍了raft的工作流程以及对特殊情况的处理.但算法.协议这种偏抽象的东西,仅仅看论文还是比较难以掌握的,需要看看在工业界的具体实现.本文关注Mo ...

  2. adb.exe 已停止工作 解决

    netstat -aon|findstr 5037tasklist /fi "PID eq 10388"TASKKILL /F /IM PPAdbServer.exe

  3. CodeForces 91B Queue

    题目链接:http://codeforces.com/contest/91/problem/B 题目大意: 有n头大象排队买票,第i头大象的年龄为ai,如果有比他年轻的大象排在他前面,这头大象就会非常 ...

  4. Shell命令-系统信息及显示之stat、du

    文件及内容处理 - stat.du 1. stat:显示inode内容 stat命令的功能说明 stat 命令用于显示 inode 内容.stat 以文字的格式来显示 inode 的内容. stat命 ...

  5. libavcodev may be vulnerable or is not supported, and should be updated for play video

    media.libavcodec.allow-obsolete

  6. 15.service认证机制

    kubernetes的安全机制,不仅仅再客户端和apisever之间的交互,各pod之间后者跨namespace之间也要以此为基准配合 RBAC来进行.提到另一个账户关系serviceaccount简 ...

  7. git 学习(3) ----- 代码共享和多人协作

    当我们开发项目的时候,项目会越来越大,就有可能需要其它同事进行参与,甚至进行开源,这时就需要找一个地方把代码存放起来,好供其它人下载并开发.这个地方,最好放到服务器上,因为只要能上网,就可以获取到, ...

  8. Java【第七篇】面向对象之类设计

    Java类的继承 类继承语法规则 < 修饰符> class < 子类名称> [extends < 父类>] { <属性和方法的声明> }  类的继承 子 ...

  9. CodeForces666E Forensic Examination

    题目描述 给你一个串S以及一个字符串数组T[1..m],q次询问,每次问S的子串S[pl​..pr​]在T[l..r]中的哪个串里的出现次数最多,并输出出现次数. 如有多解输出最靠前的那一个. 题解 ...

  10. 20165223 《信息安全系统设计基础》 实现mypwd

    一.学习pwd命令 1. pwd命令简介 英文原名:Print Working Directory 指令功能:打印出当前工作目录 执行权限:All User 指令所在路径:/usr/bin/pwd 或 ...