# 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>
<font color=red>注意下面的 Allowed to merge 和 Allowed to push 的區別,任何人不允許做push。</font>
</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開發規范