為規范開發,保持代碼提交記錄以及 git 分支結構清晰,方便后續維護,現規范 git 的相關操作。
主要規范兩點:
git 分支命名規范
git 提交記錄規范
1. git 分支命名規范
git 分支分為集成分支、功能分支和修復分支,分別命名為 develop、feature 和 hotfix,均為單數。不可使用 features、future、hotfixes、hotfixs 等錯誤名稱。
(1) 集成(回歸)分支
集成分支分為兩種:
版本內的集成分支
feature/versions/{$version}
所有功能的集成分支
develop
(2) 功能分支
功能分支分為兩類:版本功能分支和非版本功能分支。
顧名思義,版本功能分支是根據版本需求分出來的功能分支,這時候命名為 feature/{$version}/{$issue_id}_{$description} ;
而非版本功能分支則是指不跟版本一起上線的功能或者一些不緊急的 bugs,這時候命名為 feature/{$username}/{$issue_id}_{$description} 。
其中:
feature 使用單數;
變量 $version 代表版本號,格式為 vx_x_x(x為數字),比如 v6_5_0;
變量 $issue_id 代表 JIRA 的 Issue ID,或者 TAPD#ID,比如PT-7、TAPD#1011729;
變量 $username 代表開發者。username 統一使用各個 developer 的公司郵箱賬號,比如 zhuangsq,liangzy;
變量 $description 代表分支功能描述。應該盡量用簡短的詞組描述,不能使用中文,多個單詞用下划線分割,比如 remove_thread。
(3) 修復分支
修復分支表示修復緊急線上 bug 的分支(不緊急的 bug 歸為功能分支),分支命名為:hotfix/{$username}/{$issue_id}_{$description}。
其中:
hotfix 使用單數;
變量 $username 代表開發者。username 統一使用各個 developer 的公司郵箱賬號,比如 zhuangsq,liangzy;
變量 $issue_id 代表 JIRA 的 Issue ID,或者 TAPD#ID;
變量 $description 代表分支功能描述。應該盡量用簡短的詞組描述,不能使用中文,多個單詞用下划線分割,比如 remove_thread。
(4) git 分支結構
2. git 提交記錄規范
每個 git commit 記錄都需要按照固定格式,具體格式為:
第一行:TAPD 或者 JIRA id,格式為:TAPD#{$id} 或者 {$issue_id}。
第二行:提交描述。中英文皆可。