我们在我们的项目中广泛使用Jira,但我经常很难发现问题,我知道,我之前一直在研究这个问题。通常情况下,如果报告了一些案例,那似乎与我过去所从事的工作相似,但我不记得具体是什么时候。

通常情况下,我们会报告一个问题,然后我们的scrum管理员将其分配给开发人员,开发人员修复它(希望如此),然后将其传递给测试人员(耶,它工作了!)但后来它不再分配给我,我很难找到旧的问题,我记得模糊。

我想,也许有可能看到一个问题的指定历史,可能有一种方式来形成一个高级搜索/过滤器,找到所有的问题,在某个时候已经分配给我。

有人这样做过吗?


当前回答

我尝试了下面的SQL查询,它给出了所有问题和曾经分配给一个问题的所有受让人的数据。任何问题的受让人的任何变化都可以通过以下查询捕获:

select distinct
p.pkey +'-'+cast(ji.issuenum as varchar(max)),
ji.SUMMARY,
cast(ci.OLDSTRING as nvarchar(max)) as 'Old value',
cast(ci.NEWSTRING as nvarchar(max)) as 'New value'
from
jiraissue ji
join project p on p.id = ji.PROJECT
join changegroup cg on cg.issueid = ji.id
join changeitem ci on ci.groupid = cg.id and FIELD = 'assignee'

任何寻找查询的人都会发现这很有用:)

-Neha 'D' Pal

其他回答

对于任何“当前用户”的通用查询:

assignee was currentUser()

这个过滤器可以方便地共享&任何人都可以把它放在他们的仪表板上,等,它会返回特定于他们的结果。但不支持所有旧的JIRA版本。

这是我要求最多的JIRA功能。

您可以直接在数据库中通过工作日志条目查找问题:

select distinct ji.pkey from jiraissue ji inner join worklog wl on ji.id=wl.issueid where wl.author='some_username';

我同意这应该在UI中实现。

更新

这可以在没有插件的情况下工作:

assignee was currentUser() OR reporter was currentUser() ORDER BY updated DESC

原来的答案

这个问题对我来说很管用:

Participants = currentUser()

所以有三种情况: 1 -我在某种程度上改变了它-受让人改变了[UserName], 2 -我改变了状态(关闭它,无论如何)-或状态改变了[UserName], 3 - I still have it - OR assignee = [UserName]

所以整个查询(假设允许更改语句)是:

受让人更改为[UserName]或状态更改为[UserName]或受让人= [UserName]

是不支持的受让人字段,当我最近尝试。你必须使用CHANGED, FROM, TO关键字来过滤。

我用的是这样的:

project = MindBlowingProject AND (assignee in (currentUser()) OR assignee CHANGED from (currentUser()) OR reporter in (currentUser())) ORDER BY updated DESC