Github有一个很棒的功能,你可以“观察”一个问题。这对于获取有关该问题的进展的通知非常方便。
但是,有时您想要找到您知道已标记为要观看的问题的状态,但无法记住它是什么。对于不属于您自己项目的项目,这尤其有趣。例如。观看您的项目使用的库中的错误,但您不经常做出贡献。
我尝试了什么:请注意,这与watching a repo不同。我试着搜索github帮助(对于“观察问题”和“订阅问题”没有运气。我有一些希望阅读Unsubscribing from Conversations,但它并不适用。在查看存储库的问题时我(想想!我)订阅了,我尝试了各种搜索标准下拉菜单但没有运气。最后但并非最不重要的是,我在这里阅读了how to subscribe,以防它提到如何查看订阅列表。
对于那些可能会将此标记为不是编程的人,我只能要求一个更好的地方来放这个?由于Github是一种常用的编程工具,因此我将其视为高度相关的。
答案 0 :(得分:64)
Github没有列出所有观看过的问题的选项。
在这些问题上标记标签也无法解决问题。
但是只要问题发生任何变化,github就会发送通知。因此,您可以在一个地方https://github.com/notifications
查看所有通知默认情况下,这将显示未读通知(也由右上角带有数字的邮箱指示)。在该页面中,您可以选择&#34;所有通知&#34;或https://github.com/notifications?all=1,以查看自您订阅以来至少有一次更新正在观看的所有问题。< / p>
答案 1 :(得分:42)
根据GitHub API v3 documentation 1 ,有一种方法可以列出所拥有的存储库,成员存储库和组织存储库中的订阅问题。但是,不列出了您未参与的任意存储库中的订阅问题。
在Unix上,您可以像这样访问API(只在输入时输入您的GitHub密码):
curl --user "MyUserName" https://api.github.com/issues?filter=subscribed
Output:
[
{
"url": "https://api.github.com/repos/owner1/repoA/issues/3",
"repository_url": "https://api.github.com/repos/owner1/repoA",
...etc...
或使用此命令将输出格式化为问题链接列表:
curl --user "MyUserName" https://api.github.com/issues?filter=subscribed | \
grep '"url"' | grep -o 'https://api.github.com/repos/.*/issues/[0-9]*' | \
sed 's#https://api.github.com/repos/#https://github.com/#'
Output:
https://github.com/owner1/repoA/issues/3
https://github.com/owner1/repoB/issues/14
https://github.com/owner2/repoC/issues/1
1 由于我对the first answer mentioning the GitHub API的修改遭到拒绝,我在此处添加了示例。
对于仅订阅问题,以下方法无效。
作为一种变通方法,您可以在https://github.com/或https://github.com/issues/上的搜索框中输入此内容
is:open is:issue involves:YourUserName
这将以某种方式向您显示您所涉及的所有问题,但不会显示您仅订阅的问题。 GitHub help page州:
involves
限定符只是同一用户的author
,assignee
,mentions
和commenter
限定符之间的逻辑或。
答案 2 :(得分:6)
您可以在https://github.com/notifications/subscriptions
上查看您当前订阅的所有Github问题。您可以通过单击左上方的通知/响铃图标,然后选择“订阅”标签,从任何页面导航至该页面。
答案 3 :(得分:3)
如果您想查看自己参与过的某个项目的所有问题,即以任何方式与该问题进行互动。这样做;
在Github问题中进行搜索。
is:issue commenter:<username here>
这将列出您正在观看的所有问题。
答案 4 :(得分:1)
似乎您可以通过Github API获取此信息
https://developer.github.com/v3/issues/#parameters
GET / orgs /:org / issues
Parameters
Name Type Description
filter string Indicates which sorts of issues to return. Can be one of:
* assigned: Issues assigned to you
* created: Issues created by you
* mentioned: Issues mentioning you
* subscribed: Issues you're subscribed to updates for
* all: All issues the authenticated user can see, regardless of participation or creation
Default: assigned
答案 5 :(得分:0)
使用查询字符串(查询参数),您可以返回任意粒度的结果。
例如:
https://github.com/issues? (intentional break)
q=user:your-user-name+is:open+is:issue+archived:false+
示例: (以下示例中的所有空格都应为 URL 中的 + 符号)
sumting in:title,body
匹配标题或正文中带有“sumting”的问题,例如
https://github.com/issues?q=user:your-org-name+is:closed+yoursearchstr+in:body+is:PR
is:issue label:bug is:closed
匹配标签为“bug”的已关闭问题。
author:yourusername is:open whachamacallit in:body is:issue
commenter:someusername is:closed whachamacallit in:title,body is:pr
快速参考:
(注意:实际使用中冒号 :
后没有空格;大多数可以在链接示例中否定)
assignee: USERNAME
closed: YYYY-MM-DD
created: YYYY-MM-DD
也例如created: <2021-06-01
comments: <10 / >32 / 5...10
例如comments:3...5
commenter: USERNAME
in: title/body/comments
is: merged/unmerged/open/closed/archived
-linked: pr
(未链接到 PR 的项目)
label: LABEL
mentions: USERNAME
milestone: MILESTONE
review: none/required/approved
(续)review:changes-requested/review-requested/reviewed-by
注意:文档显示 changes_requested 使用下划线,但似乎可以使用连字符
state: open/closed
status: pending/success/failure
updated:>=2021-06-01
type:issue/pr
(下面引用的链接中有更多)
参考文献:
Github - Searching issues and PRs
URL Encoded characters(例如 %3A
== :
)