代碼托管服務提供基于Git的在線代碼管理服務,包括代碼克隆/提交、分支管理等功能。
由于門店網絡查詢功能為高優先級Story,本章節將以此功能為例進行介紹如何進行源代碼管理與開發。
本樣例項目中采用分支來進行代碼的開發。首先由開發人員Chris在代碼倉庫中創建分支,并進行代碼開發;然后開發人員Chris在代碼倉庫中提交分支合并請求,項目經理Maggie評審通過后合并分支至主干。
使用分支管理代碼
分支是用來將特性開發并行獨立出來的工具。使用分支意味著把工作從開發主線上分離開來,以免影響開發主線。
在創建代碼倉庫時,會有一個默認分支“master”,即主線。為了保證鳳凰商城的穩定運行,需要有一個穩定的持續可用master。因此,項目經理建議:不直接在master分支上進行代碼開發,而是統一采用功能分支+合并請求的方式,并且每一個功能分支的代碼,必須經過團隊的其他成員評審后,才可以進行合并。
步驟 1 將master分支設置為受保護分支。
- 進入“鳳凰商城”項目,單擊導航“代碼 > 代碼托管”,頁面將顯示樣例項目內置的代碼倉庫“phoenix-sample”。
- 單擊倉庫名稱進入代碼倉庫,選擇“設置”頁簽。在導航中單擊“策略設置 > 保護分支”。
- 單擊“新建保護分支”,參照下表在彈框中完成配置,單擊“確定”保存。
新建保護分支配置
| 配置項 | 配置建議 |
|---|---|
| 選擇需要保護的分支 | 選擇“master”。 |
| 能推送 | 根據需要配置,本文檔中保持默認配置。 |
| 能合并 | 根據需要配置,本文檔中保持默認配置。 |
| 成員 | 根據需要勾選“能推送”、“能合并”,并在下拉列表中選擇成員。本文檔中保持默認配置。 |
步驟 2 創建功能分支。
- 進入“鳳凰商城”項目,在代碼托管頁面中找到倉庫“phoenix-sample”。
- 單擊倉庫名稱進入代碼倉庫,在“代碼”頁簽中單擊“分支”。
- 單擊“新建”,參照下表輸入分支信息,單擊“確定”保存。
新建分支
| 配置項 | 配置建議 |
|---|---|
| 基于 | 選擇“master”。 |
| 分支名稱 | 輸入“Feature-Store”。 |
| 關聯工作項 | 選擇“作為用戶可以查詢所有門店網絡”。 |
修改、提交代碼
在迭代規劃時將門店查詢功能分解為前端展示與后臺管理兩個task,本節以Task“前端展示 - 添加門店網絡菜單”介紹如何使用修改與提交代碼。
步驟 1 單擊導航“工作”,選擇“迭代”頁簽。
在迭代4中找到Task“前端展示 - 添加門店網絡菜單”,將Task的狀態修改為“進行中”。
步驟 2 單擊導航“代碼 > 代碼托管”,找到倉庫“phoenix-sample”。
步驟 3 單擊倉庫名稱進入代碼倉庫,選擇“代碼”頁簽。
步驟 4 單擊文件列表上方的“master”,在下拉列表中選擇分支“Feature-Store”。
步驟 5 在文件列表中找到“vote/templates/store-network.html”并打開。
步驟 6 單擊
,根據需求規劃添加門店地址,并在頁面底部文本框中輸入備注信息“添加門店列表”,單擊“確定”。
<ul>
<li>A分店:E機場1號航站樓出發層靠右直行123米右側</li>
<li>B分店:F區G路456號</li>
<li>C分店:H區J街789號</li>
<li>D分店:K區L大道K大樓西側</li>
</ul>
步驟 7 以同樣方法打開并編輯“/vote/templates/index.html”。
在179行添加菜單“門店網絡”,輸入提交信息“fix #xxxxxx 前端展示 - 添加門店網絡菜單”,單擊“確定”。
其中“#xxxxxx”是Task“前端展示 - 添加門店網絡菜單”的編號,在工作項列表中獲取,實踐中修改為實際Task的編號。
<li class="nav-item"> <a href="store-network" class="nav-link">門店網絡</a> </li>
步驟 8 單擊導航“工作 > 迭代”,在迭代4中找到Task“前端展示 - 添加門店網絡菜單”。
- 單擊Task名稱,在詳情頁中可看到狀態自動變為“已解決”。
- 選擇“關聯”頁簽,在“代碼提交記錄”下可看到一條記錄,記錄的描述與上一步中輸入的提交信息相同。
檢視代碼、合并分支
步驟 1 開發人員發起合并請求。
開發人員Chris完成代碼開發,確認無誤后,即可發起合并請求,將功能分支合并到master中。
- 進入代碼倉庫,選擇“合并請求”頁簽,單擊“新建”。
- 源分支選擇“Feature-Store”,目標分支選擇“master”,單擊“下一步”。
- 參照下表編輯合并請求詳情。
合并請求配置
| 配置項 | 配置建議 |
|---|---|
| 標題 | 輸入“添加門店網絡列表”。 |
| 合并人 | 單擊 ,在彈框中勾選“Maggie”,單擊“確定”。 |
| 審核人 | 單擊 ,在彈框中勾選“Maggie”,單擊“確定”。 |
4.單擊“新建合并請求”完成合并請求的創建。
步驟 2 項目經理評審并完成代碼合入。
本文檔中,合并請求的評審人與合并人均是項目經理Maggie。因此Maggie可評審合并請求內容,并在評審通過后完成分支合入。
- 進入代碼倉庫后,選擇“合并請求”頁簽,可找到由開發人員Chris創建的合并請求。
- 單擊該請求,查看合并請求詳情。
- 可在頁面中留下評審意見。。
- 單擊“合入”,將分支合入“master”。
說明若發起分支合并請求時勾選了“合并后刪除源分支”,分支“Feature-Store”將在分支合并完成后被刪除。
,在彈框中勾選“Maggie”,單擊“確定”。
,在彈框中勾選“Maggie”,單擊“確定”。