Android Studio 相关

配置 JIRA 服务器

配置 JIRA 服务器

配置服务器地址和用户账号密码

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

commit message

切换到某个 JIRA 任务

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

切换任务

切换任务

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

git commit

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

JIRA 任务状态,so easy~

添加标识符提交

jira自动更改状态

Smart Commit 配置

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

项目里添加 git 仓库

image.png

image.png

在关联完 git 仓库后,你需要进行一次索引的操作。那么问题来了,难道每次在

git 上提交 commit 都得通知 JIRA 更新索引吗?答案既是肯定的也是否定的,要使得 JIRA 可以根据 git commit 修改任务状态,必然要在 git 每次提交 commit 时更新索引,但这个动作当然不是由我们手动来触发,而是使用 webhooks。

github/gitlab 里配置 webhooks

右上角小齿轮 - 应用程序 - 选择左下方 webhooks,获取那一串 http 开头的 url

webhooks

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

image.png

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 就可以成功分配值了。

raw value

场景二:现在用户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...

android如何做工作流,JIRA 知多少:聊一聊 Android Studio 、工作流相关设置相关推荐

  1. android手机做个人网盘,[干货Get!]Android搭建Cloudreve私人云盘 来自 kindyear

    传送门:查看链接 不过许多人都没有树莓派,但是旧手机大家大部分肯定还是有的,那么这一篇教程就让我们利用旧Android手机搭建我们的私有家庭云 Part.1(介绍) 上一篇教程已经讲过了,我在这里简单 ...

  2. android如何做一个按钮,如何制作一个Android凸起按钮?

    我想你实际上想要按钮升高.不要使用卡,因为它需要更多资源.用于棒棒糖设备使用 ... android:stateListAnimator="@anim/my_animator" / ...

  3. Android Studio的相关设置

    1.Android Studio使用Ctrl+鼠标滚轮调整字体大小 File->Settings ->Editor->General    勾选✔Change font size w ...

  4. 星云测试-给你的Android应用做个深度体检

    星云测试-给你的Android应用做个深度体检   星云测试- Android应用深度体检专业平台 星云在线云测试(简称星云测试www.teststars.cc)是全球第一个发布并商用的数字化精准软件 ...

  5. 聊一聊Android的消息机制

    2019独角兽企业重金招聘Python工程师标准>>> 聊一聊Android的消息机制 侯 亮 1概述 在Android平台上,主要用到两种通信机制,即Binder机制和消息机制,前 ...

  6. 仿知乎日报android

    刚开始接触android,就拿着知乎日报做实验品了, 大概写了有三天了,基本首屏功能完成了:开始时候连baseAdapter都不会写, 现在也大概了解了几个功能,扯上几个android的组件了 侧边栏 ...

  7. 当我们按下电源键,Android 究竟做了些什么?

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由goo发表于云+社区专栏 相信我们对Android系统都不陌生,而Android系统博大精深,被各种各样的智能设备承载的同时,我们会否 ...

  8. Android必知必会-Android Studio下配置和使用Lambda

    什么是Lambda表达式 lambda表达式,它将允许我们将行为传到函数里.在Java 8之前,如果想将行为传入函数,仅有的选择就是匿名类,需要6行代码.而定义行为最重要的那行代码,却混在中间不够突出 ...

  9. android:configchanges的作用,将uiMode附加到android:configChanges实际做什么?

    我只是修复了我们应用程序中的错误.问题在于,对接或取消对接设备会导致应用程序重新启动.我在拖曳大量论坛线程后发现了此修复程序,是将uiMode附加到AndroidManifest.xml文件中的and ...

最新文章

  1. MongoDB与c#(二)简单例子 使用1.7版本驱动
  2. php添加开机启动脚本_centos 7.2 添加php7 的 php-fpm 开机启动
  3. php mysql 内存溢出_关于MySQL的整型数据的内存溢出问题的应对方法_MySQL
  4. 如何删除过期的数据库备份文件呢? .
  5. Flume Sink
  6. 第一 二章 计算机基础知识,[精品]第二章-计算机基础知识.doc
  7. EBU 4202数电 LAB2 答案与解析
  8. 全自动抠图换背景软件下载_抠图换背景app下载-抠图换背景下载v1.1.6 安卓版-西西软件下载...
  9. H3C 路由器中VLAN隔离
  10. HUAWER 华为5G无线数据终端 和 TP-LINK路由器AX6000连接及注意事项
  11. python学习之股票查询程序
  12. java中计算三角形的角度
  13. 访问图片资源403问题
  14. ndn-tools:dissect-wireshark的使用
  15. 干货| 生鲜电商的冷库内部该怎么设计(含案例)
  16. 常见的Nginx 502 Bad Gateway解决办法
  17. macOS开发入门教程 : Part 2
  18. 在win10系统中安装Visual C++ 6.0的具体方法
  19. Hibernate @SequenceGenerator的注解介绍
  20. python空间分析库_空间分析:5-1.空间分析库PySAL的使用

热门文章

  1. html抓取成xml,使用XML包将html表抓取到R数据帧中
  2. dreawever与php做网页,教程方法;Drea、mweaver CS5更改代码颜色方法电脑技巧-琪琪词资源网...
  3. mysql迁移到mariadb_项目从MYSQL迁移至MARIADB教程
  4. 进入云原生、分布式的时代,什么才是数据库的正确打开方式
  5. 美团外卖自动化业务运维系统 - Alfred
  6. 华山论“件”:Kafka、RabbitMQ、RocketMQ技能大比拼
  7. 使用MRS CDL实现实时数据同步的极致性能
  8. 一个Camel Multicast组件聚合策略问题的解决过程
  9. 为什么11·11物流一年比一年快?奥秘就在这里!
  10. 云图说|华为云数据库在线迁移大揭秘