Android Studio 相關(guān)
配置 JIRA 服務器
如果細心的話會發(fā)現(xiàn)有一個選項卡:Commit Message。這一段代碼是不是有點熟悉呢甥绿?你沒有猜錯荚孵,這段代碼就是 commit 模板收叶,當你切換 task 后在git commit 時會自動將任務的id 和 簡介配置到 commit 信息里共苛。
切換到某個 JIRA 任務
點擊工具欄上的 Default task 隅茎,下方顯示的是最近打開的任務辟犀。點擊 open Task 會顯示出指派給你的任務,點擊可以切換到對應的任務:
這里要記得勾選 create changelist。另外建議不要使用默認勾選的 create branch出嘹,否則每一次切換任務后本地都會新建對應的分支税稼,到后面分支茫茫多的時候看得藍廋~
可以看到,切換到該任務后兜蠕,使用 AS 自帶的 git commit 時抛寝,會自動將任務 id 和簡介顯示出來墩剖,結(jié)合 JIRA 的 Smart Commits,只要在 commit 信息中添加對應的標識(例如我設(shè)置了 finishDev 為從“開發(fā)中”狀態(tài)轉(zhuǎn)換為“測試中”狀態(tài)的標識郊霎,文章下面會介紹如何設(shè)置對應的狀態(tài)轉(zhuǎn)換標識)爷绘,然后 push 這條 commit 到遠程土至,就可以自動更改
JIRA 任務狀態(tài),so easy~
Smart Commit 配置
看了上面的示例是不是開始覺得 JIRA 有點意思了?要使用 Smart Commit 你需要先在項目里配置一下 git
項目里添加 git 倉庫
在關(guān)聯(lián)完 git 倉庫后解幽,你需要進行一次索引的操作躲株。那么問題來了霜定,難道每次在
git 上提交 commit 都得通知 JIRA 更新索引嗎廊鸥?答案既是肯定的也是否定的,要使得 JIRA 可以根據(jù) git commit 修改任務狀態(tài)曾雕,必然要在 git 每次提交 commit 時更新索引剖张,但這個動作當然不是由我們手動來觸發(fā),而是使用 webhooks幅虑。
github/gitlab 里配置 webhooks
右上角小齒輪 - 應用程序 - 選擇左下方 webhooks顾犹,獲取那一串 http 開頭的 url
再到 github/gitlab 中配置 url炫刷,此處 Secret Token 不用填
webhooks 配置好后,每次 git 接收到 commit 時都會自動通知 JIRA浑玛,JIRA 根據(jù) commit 內(nèi)容識別是否為與任務操作相關(guān)的提交顾彰,并更新任務狀態(tài)。
JIRA 配置相關(guān)
編輯視圖
創(chuàng)建工作流
創(chuàng)建轉(zhuǎn)換狀態(tài)
該狀態(tài)的命名即為 Smart Commit 時的標識符 例如 ‘‘Bug-5 #finishDev 修復###問題’’
編輯轉(zhuǎn)換狀態(tài)
編輯轉(zhuǎn)換狀態(tài)之前記得點擊右上角的編輯按鈕將工作流置于編輯狀態(tài)
點擊編輯按鈕厕隧,可以為工作流狀態(tài)轉(zhuǎn)換配置編輯視圖(例如需要填寫備注、解決結(jié)果等)帖族,該視圖在右側(cè) 界面 - 添加屏幕 中編輯。
不得不提的是上圖中另外勾紅的兩處茶鹃,其實不止兩處艰亮,轉(zhuǎn)換狀態(tài)的處理有四大塊迄埃,這里簡要介紹一下我使用到的兩塊內(nèi)容:
條件
顧名思義,為轉(zhuǎn)換狀態(tài)前置某些條件判斷蕉汪,只有符合條件才允許做狀態(tài)的轉(zhuǎn)換,否則在任務里直接不可見該轉(zhuǎn)換狀態(tài)福澡。
舉個栗子革砸,如果任務 A 下有子任務 b 和子任務 c糯累,正常來說我們肯定不希望在b, c 完成前就可以將 A 完成泳姐,故可以對工作流中 close 轉(zhuǎn)換狀態(tài)做一個限制,如圖:
構(gòu)造子任務阻止條件
構(gòu)造該條件后,建個 demo 試試看:
可以看到较锡,父任務已經(jīng)在開發(fā)中狀態(tài)了盗痒,但轉(zhuǎn)換狀態(tài)只有 back(回退這一個操作了)俯邓,因為其子任務還是啟動狀態(tài),不符合轉(zhuǎn)換條件鸟整。
后處理功能
后處理功能的功能非常多朦蕴,這里簡要提幾種功能與場景拋裝引玉:
場景一:開發(fā)完成測試吩抓,經(jīng)辦人自動分配為測試負責人
這里有個需要注意的地方疹娶,這里我選擇的是 Raw Value, 經(jīng)過測試填寫名字和郵箱都是無法生效的钳垮,要填寫用戶的 id扔枫,例如在用戶選擇器里可以看到每個用戶的 id,填寫這個 id 就可以成功分配值了倚舀。
場景二:現(xiàn)在用戶A創(chuàng)建了一個任務痕貌,項目的負責人B將其分配給了經(jīng)辦人C糠排,C在處理完成后將任務自動分配給了報告人A入宦,A在進行確認時發(fā)現(xiàn)不符合要求,執(zhí)行一個自定義工作流動作“退回”時落追,希望可以將任務退回給C涯肩。
但是問題是病苗,C在處理完成時將任務分配給了報告人A,此時經(jīng)辦人和報告人都是A了贷腕,所以無論在工作流動作的處理結(jié)果中選擇分配當前用戶阵幸、分配給報告人挚赊、分配給項目負責人都無法實現(xiàn)退回給C的需求济瓢。
這個需求是在搜索資料的過程中看到的,Kenny Jin 提供了這樣的解決方案:copy value from field to field夺克。該操作也是在后處理設(shè)置里嚎朽。
場景三:狀態(tài)轉(zhuǎn)換為 close 時哟忍,自動將問題解決結(jié)果置為完成(否則即使狀態(tài)已切換為完成锅很,但解決結(jié)果未改變,則任務會一直在打開的問題里展現(xiàn))
同樣是后處理功能的設(shè)置:
場景四:記錄任務參與者,便于統(tǒng)計工作報表
JIRA 的經(jīng)辦人一次只能指定一個用戶褐奥,為了實現(xiàn)這種功能翘簇,我的想法是創(chuàng)建一個自定義字段(類型為多用戶選擇器),在每次開發(fā)者參與到任務中時(或者上游切換狀態(tài)時就將經(jīng)辦人分配下一個開發(fā)者)耍群,將經(jīng)辦人添加到該字段內(nèi)蹈垢,最后在報表中選擇以該字段為篩選值即可袖裕。
右上角小齒輪 - 問題 - 左側(cè)
通知方案:自動郵件通知執(zhí)行者
右上角小齒輪-問題-下方選擇通知方案谤民,自定義一個通知方案疾宏。
在這之前要先配置一下郵箱坎藐,這里提供一下網(wǎng)易企業(yè)郵箱的 SMTP 服務器地址:smtp.ym.163.com 默認端口為:25 (如勾選ssl安全鏈接哼绑,端口號為994)抖韩,詳見客戶端的設(shè)置方法疫铜。
配置好后壳咕,點擊右上角小齒輪 - 項目,進入項目主頁驹尼,將通知方案設(shè)置上去