JIRA 知多少:聊一聊 Android Studio 、工作流相关设置
Android Studio 相关
配置 JIRA 服务器


如果细心的话会发现有一个选项卡:Commit Message。这一段代码是不是有点熟悉呢?你没有猜错,这段代码就是 commit 模板,当你切换 task 后在git commit 时会自动将任务的id 和 简介配置到 commit 信息里。

切换到某个 JIRA 任务
点击工具栏上的 Default task ,下方显示的是最近打开的任务。点击 open Task 会显示出指派给你的任务,点击可以切换到对应的任务:


这里要记得勾选 create changelist。另外建议不要使用默认勾选的 create branch,否则每一次切换任务后本地都会新建对应的分支,到后面分支茫茫多的时候看得蓝廋~

可以看到,切换到该任务后,使用 AS 自带的 git commit 时,会自动将任务 id 和简介显示出来,结合 JIRA 的 Smart Commits,只要在 commit 信息中添加对应的标识(例如我设置了 finishDev 为从“开发中”状态转换为“测试中”状态的标识,文章下面会介绍如何设置对应的状态转换标识),然后 push 这条 commit 到远程,就可以自动更改
JIRA 任务状态,so easy~


Smart Commit 配置
看了上面的示例是不是开始觉得 JIRA 有点意思了?要使用 Smart Commit 你需要先在项目里配置一下 git
项目里添加 git 仓库


在关联完 git 仓库后,你需要进行一次索引的操作。那么问题来了,难道每次在
git 上提交 commit 都得通知 JIRA 更新索引吗?答案既是肯定的也是否定的,要使得 JIRA 可以根据 git commit 修改任务状态,必然要在 git 每次提交 commit 时更新索引,但这个动作当然不是由我们手动来触发,而是使用 webhooks。
github/gitlab 里配置 webhooks
右上角小齿轮 - 应用程序 - 选择左下方 webhooks,获取那一串 http 开头的 url

再到 github/gitlab 中配置 url,此处 Secret Token 不用填

webhooks 配置好后,每次 git 接收到 commit 时都会自动通知 JIRA,JIRA 根据 commit 内容识别是否为与任务操作相关的提交,并更新任务状态。
JIRA 配置相关
编辑视图

创建工作流

创建转换状态
该状态的命名即为 Smart Commit 时的标识符 例如 ‘‘Bug-5 #finishDev 修复###问题’’

编辑转换状态
编辑转换状态之前记得点击右上角的编辑按钮将工作流置于编辑状态

点击编辑按钮,可以为工作流状态转换配置编辑视图(例如需要填写备注、解决结果等),该视图在右侧 界面 - 添加屏幕 中编辑。

不得不提的是上图中另外勾红的两处,其实不止两处,转换状态的处理有四大块,这里简要介绍一下我使用到的两块内容:
条件
顾名思义,为转换状态前置某些条件判断,只有符合条件才允许做状态的转换,否则在任务里直接不可见该转换状态。
举个栗子,如果任务 A 下有子任务 b 和子任务 c,正常来说我们肯定不希望在b, c 完成前就可以将 A 完成,故可以对工作流中 close 转换状态做一个限制,如图:

构造子任务阻止条件

构造该条件后,建个 demo 试试看:

可以看到,父任务已经在开发中状态了,但转换状态只有 back(回退这一个操作了),因为其子任务还是启动状态,不符合转换条件。
后处理功能
后处理功能的功能非常多,这里简要提几种功能与场景抛装引玉:
场景一:开发完成测试,经办人自动分配为测试负责人


这里有个需要注意的地方,这里我选择的是 Raw Value, 经过测试填写名字和邮箱都是无法生效的,要填写用户的 id,例如在用户选择器里可以看到每个用户的 id,填写这个 id 就可以成功分配值了。

场景二:现在用户A创建了一个任务,项目的负责人B将其分配给了经办人C,C在处理完成后将任务自动分配给了报告人A,A在进行确认时发现不符合要求,执行一个自定义工作流动作“退回”时,希望可以将任务退回给C。
但是问题是,C在处理完成时将任务分配给了报告人A,此时经办人和报告人都是A了,所以无论在工作流动作的处理结果中选择分配当前用户、分配给报告人、分配给项目负责人都无法实现退回给C的需求。
这个需求是在搜索资料的过程中看到的,Kenny Jin 提供了这样的解决方案:copy value from field to field。该操作也是在后处理设置里。

场景三:状态转换为 close 时,自动将问题解决结果置为完成(否则即使状态已切换为完成,但解决结果未改变,则任务会一直在打开的问题里展现)
同样是后处理功能的设置:


场景四:记录任务参与者,便于统计工作报表
JIRA 的经办人一次只能指定一个用户,为了实现这种功能,我的想法是创建一个自定义字段(类型为多用户选择器),在每次开发者参与到任务中时(或者上游切换状态时就将经办人分配下一个开发者),将经办人添加到该字段内,最后在报表中选择以该字段为筛选值即可。
右上角小齿轮 - 问题 - 左侧


通知方案:自动邮件通知执行者
右上角小齿轮-问题-下方选择通知方案,自定义一个通知方案。

在这之前要先配置一下邮箱,这里提供一下网易企业邮箱的 SMTP 服务器地址:smtp.ym.163.com 默认端口为:25 (如勾选ssl安全链接,端口号为994),详见客户端的设置方法。
配置好后,点击右上角小齿轮 - 项目,进入项目主页,将通知方案设置上去


to be continued...
JIRA 知多少:聊一聊 Android Studio 、工作流相关设置的更多相关文章
- Android studio界面相关设置
用惯了emacs的操作方式,每当使用一款新的编辑器的时候,第一个想到的就是这个工具有没有emacs的快捷键,Android studio也是一样的. 1. Android studio设置emacs的 ...
- Android Studio(三):设置Android Studio编码
Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...
- Android studio 的初始设置
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- android studio 的部分设置
1.android studio 如何提示方法的用法 在 Eclipse中鼠标放上去就可以提示方法的用法,实际上Android Studio也可以设置的.如图 Preferences > Edi ...
- android studio的快捷键设置的和eclispe一样
最近安装了android studio,但是习惯了使用eclispe的快捷键,所以我也把android studio的快捷键设置的和eclipse一样. 具体如下: 1.快捷键 Android Stu ...
- Android必知必会-Android Studio下配置和使用Lambda
移动端如果访问不佳,请访问–>Github版 背景 和朋友讨论 JAVA8 的新特性,聊到Lambda,正好在掘金上看到一篇相关的文章,结合资料,作一个总结,特别是记录下实际使用中遇到的问题. ...
- Android必知必会-Android Studio修改包名
如果移动端访问不佳,请尝试–> Github版 背景 公司做相似产品较多,一般都是以某个产品为基础修改,逐步替换设计图的切图.这个就会导致需要经常为Copy的项目修改包名. 这里是参考一些网上的 ...
- android studio 配置相关问题
1:Unknown AVD name, use -list-avds to see valid list. 下午1:26 Emulator: emulator: ERROR: Unknown A ...
- Android Studio的简单设置:
4.关闭更新: 如下图所示: 6.添加api文档悬浮提示: AS默认是没有api文档悬浮提示的,只有按住[Ctrl+Q]太会出现提示.如果要添加api的自动悬浮提示,设置如下: 上图中,在红框部分打钩 ...
随机推荐
- CoProcessFunction实战三部曲之一:基本功能
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 学JAVA的艰难之路
周五回家了,这两天也没有更新代码系列,很抱歉,之后会补上.今天刚到宿舍,写了会代码,想用一个数组的从键盘输入,再也弄不好了,最终在我不断的翻之前写的代码,终于是找到了一个例子,真的不容易,编程这东西, ...
- moviepy音视频剪辑:moviepy中的剪辑基类Clip详解
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- 第11.5节 Python正则表达式搜索任意字符匹配及元字符“.”(点)功能介绍
在re模块中,任意字符匹配使用"."(点)来表示, 在默认模式下,点匹配除了换行的任意字符.如果指定了搜索标记re.DOTALL ,它将匹配包括换行符的任意字符.关于搜索标记的含义 ...
- SQL Injection (Blind) Low
SQL盲注分析 盲注较普通注入难度会有所增加,根据页面响应不同大概分为以下几种:布尔型盲注:时间盲注:报错注入 普通注入与盲注的对比: 普通注入: ...
- Day5 【Scrum 冲刺博客】
每日会议总结 昨天已完成的工作 方晓莹(PIPIYing) 搭建与后台对接的代理服务器 对接个人中心接口 方子茵(Laa-L):暂无 黄芯悦(Sheaxx) 完善投诉反馈页面 完善车位管理页面 舒雯钰 ...
- 题解-CF708D Incorrect Flow
题面 CF708D Incorrect Flow 给一张网络流图,可能有流量不守恒或者流量超过容量的情况,求最少的将某条边流量或容量 \(\pm 1\) 的操作次数使得网络流图正确. 数据范围:\(1 ...
- 题解 CF1428F Fruit Sequences
\(\texttt{Bullshit}\) 蒟蒻 \(\texttt{7 min}\) 切 \(\texttt{F}\), 挽回了本一定掉分的局面/cy 分竟然还没有别人 5 题高 (本题解为目前 c ...
- AcWing 328. 芯片 (二进制写法)
题目链接 我自闭了,调了一下午,我居然认为 \(2, 3\) 凑不出 \(7\),我怕是个孤儿. 这是一位非要用二进制写的勇士. 首先定义状态 \(S\),若 \(S\) 的二进制第 \(k\) 位为 ...
- Filebeat+Logstash自定义多索引
方案一:推荐 [root@elk-node-1 filebeat]# cat filebeat.yml|egrep -v "^$|^#|#" filebeat.inputs: - ...