# SVN 代码提交规范
---
[TOC]
## 1. 提交前配置忽略文件
首次提交前需要先配置忽略文件,防止将不需要提交的文件进行提交,当发现有不需要加入版本管理的文件生成时,及时添加到忽略文件中。
**需要忽略的文件如下**
```.ignore
.idea 文件夹
.gradle 文件夹
所有的 build 文件夹
所有的 .iml 文件
local.properties 文件
```
## 2. 先更新,再提交
提交前需要先更新代码,如果有代码更新,需要重新编译并测试通过后再提交。
## 2. 冲突解决后再提交
合并文件产生冲突时需要联系对应的开发人员,两个人一起协商解决冲突。解决冲突之后,需要两人一起测试保证解决冲突之后,程序不会影响其他功能。
## 3. 提交前检查修改内容
自查提交的代码是否会引入新的 bug
防止提交临时修改的内容,如修改 url 为测试网络,修改代码逻辑以用于测试功能,修改了 log 开关。
## 4. 不要提交不能通过编译的代码
代码在提交之前,首先要确认自己能够在本地编译。如果在代码中使用了第三方类库,要考虑到项目组成员中有些成员可能没有安装相应的第三方类库。项目经理在准备项目工作区域的时候,需要考虑到这样的情况,确保开发小组成员在签出代码之后能够在统一的环境中进行编译。
## 5. 提交时注意不要提交编译生成的文件
例如eclipse中的.classpath文件,AS生成的 build目录、.iml 文件等。请自觉不要提交这样的文件。因为如果你这样做,这意味着每当他们从版本控制系统里取下最新文件时会让你的编译文件覆盖掉他们的,在他们下一次编译时就会出问题。而且只要他们重新编译后再把编译文件重新上传上去,同样的问题会以相反的方向再发生一次。
当然另一个问题就是这样做很浪费。这会浪费源代码管理服务器的硬盘空间,会浪费带宽并会通过网络发送时一直潜伏着,而且这样做造成的不可避免的冲突会极度浪费你的时间。
## 6. 多提交,及时提交
当完成了一个小功能,能够通过编译并且自己测试之后,及时地提交。 例如在更改UI界面的时候,可以每完成一个UI界面的修改或者设计,就提交一次。在开发功能模块的时候,可以每完成一个小细节功能的测试,就提交一次,在修改bug的时候,每修改掉一个bug并且确认修改了这个bug,也提交一次。
## 7. 提交信息需要写本次修改目的,为什么要提交新的代码
在一个项目组中使用SVN,如果提交空的标注或者不确切的标注将会让项目组中其他的成员感到很无奈,项目经理无法很清晰的掌握工作进度,无法清晰的把握此次提交的概要信息。在发现错误后也无法准确的定位引起错误的文件。所以,在提交工作时,要填写明晰的标注,能够概要的描述所提交文件的信息,让项目组其他成员在看到标注后不用详细看代码就能了解你所做的修改。
## 8. 不要提交自己不明白的代码
代码在提交入SVN之后,你的代码将被项目成员所分享。如果提交了你不明白的代码,你看不懂,别人也看不懂,如果在以后出现了问题将会成为项目质量的隐患。因此在引入任何第三方代码之前,确保你对这个代码有一个很清晰的了解。
## 9. 沟通协调好各成员的工作计划
尽可能的减少在开发过程中可能出现的冲突,提高开发效率
### 参考资料
* http://tech.it168.com/a2012/0307/1321/000001321198_all.shtml
* https://blog.csdn.net/nokianasty/article/details/12168577
网友评论