# Git使用规范
## Git使用教程
有关Git的使用教程,可以参考官网:https://git-scm.com/book/zh/v2
或者自行Google一下,相关使用教程资料网上很多。
## Git 工作流程
我们采用GitFlow分支管理流程,相关信息可以参考:
* http://www.ruanyifeng.com/blog/2015/12/git-workflow.html
* http://www.jianshu.com/p/104fa8b15d1e
* http://www.cnblogs.com/cnblogsfans/p/5075073.html
## 分支命名
* 所有项目的主分支为dev分支(和生产环境同步)
* master分支作为里程碑分支用来打tag留存,归档;
* feature分支是日常的功能开发分支,命名规则 dev_功能_开发人名字全拼
* hotfix分支是线上bug修改分支,命名规则 hotfix_JIRA_修复人名字全拼。
## 分支保护
【<font color=red>强制</font>】不允许往dev和master分支直接push代码,仅允许merge request的方式,设置见下图:
<center>![](https://box.kancloud.cn/c85e3e21fca546269ac505931b98dc8e_374x331.png)
<font color=red>注意下面的 Allowed to merge 和 Allowed to push 的区别,任何人不允许做push。</font>
![](https://box.kancloud.cn/5becd48cae1530f9ad50abefd7b8016b_867x162.png)</center>
## Git提交记录
以简洁、表意清晰为基本原则,要求每个提交记录包含以下信息:[任务类别] <简述> (如果有相应的JIRA任务,建议加上JIRA任务号):
* dev - 开发工作任务,例如::[dev] #ENGINE-002 去Dubbo改造
* bugfix - bug修复,例如:[bugfix] #ENGINE-001 data字段超长问题解决
* other - 杂事,非功能开发和bug修复,比如:[other] 补充注释
一次Git提交尽量只包括一个功能的开发代码 或者 一个bug的修复代码,不要一堆功能或者多个bug放在一个commit中;
## 注意事项
* 超过6个月以上未更新的分支全部清理;
* 上线完成的分支请及时清理;
* 禁止将公司代码上传到公司GitLab服务器以外的地方;
* 禁止在Git代码中直接配置线上任何账号信息;
- 说明
- Python编程规范
- Python风格规范
- Python语言规范
- Java编程规范
- 一、命名约定
- 二、常量定义
- 三、格式约定
- 四、OOP约定
- 五、集合处理
- 六、并发控制
- 七、控制语句
- 八、注释约定
- 九、异常日志
- 十、日志约定
- Android开发规范
- 前端开发规范
- HTML
- JavaScript
- CSS
- MySQL约定
- 一、基本规范
- 二、库表设计规范
- 三、字段设计规范
- 四、索引规范
- 五、SQL设计规范
- 六、业务字段命名规范
- 开发安全约定
- 一、代码安全
- 二、移动开发安全
- 三、服务器安全
- 四、安全意识
- 版本管理
- Git使用规范
- 技术实践及可视化
- 一、Code Review
- 二、单元测试
- 三、自动化测试
- 四、技术债
- 五、CI
- IOS开发规范