跳转到内容

cnb-rs pr list

cnb-rs pr list [flags]

列出 Pull Request。默认显示与当前用户相关的(我提的 + 让我评审的);可通过 --author / --reviewer 切换到 filter 模式查任意条件。

两种模式

默认模式(不传 --author/--reviewer

并发查两类 PR 合并显示,RELATION 列标记关系:

  • ME->:我提的(authors=me)
  • ->ME:让我评审的(reviewers=me)
  • ME->ME:既是我提的又要我评审

filter 模式(指定 --author--reviewer

直接按指定条件查询,多一列 STATE(不同状态的 PR 可能混在一起),不显示 RELATION。

选项

  • -s, --state <STATE>:状态过滤(open / closed / all),默认 open
  • --author <USERNAME>:按作者过滤;切换到 filter 模式
  • --reviewer <USERNAME>:按评审人过滤;切换到 filter 模式
  • -l, --label <LABELS>:按标签过滤(逗号分隔)
  • -B, --base-ref <BRANCH>:按目标分支过滤(如 main
  • --sort <FIELD>:排序字段(如 -created_at / -updated_at
    • 注意:以 - 开头的值会被 clap 当成 flag;用 --sort=-created_at 等号形式
  • -L, --limit <N>:最大数量(默认 30,CNB 上限 100)

继承的全局选项:

  • --repo <REPO>:指定仓库路径(格式:group/repo
  • --json:以 JSON 格式输出(完整 PullRequest 对象,不是表格 5 元组)
  • --domain <DOMAIN>:指定目标域名(默认:cnb.cool

示例

bash
# 默认:与我相关的 open PR(最多 30 条)
$ cnb-rs pr list

Showing 3 open pulls in wwvo/cnb-rs/cnb-rs

NUMBER   TITLE                                 LABELS  UPDATED         RELATION
#287     feat: add foo                         bug     约 2 小时前     ME->
#290     fix: bar                              -       约 1 天前       ->ME
#295     refactor: baz                         test    约 3 天前       ME->ME

# 看 closed 的(限 5 条)
$ cnb-rs pr list -s closed -L 5

# 看所有人提到 main 的 PR
$ cnb-rs pr list --reviewer "@me" -B main

# 按某作者过滤(filter 模式,多 STATE 列)
$ cnb-rs pr list -s all --author alice -L 5

# 按时间倒序(注意等号形式)
$ cnb-rs pr list -s all --sort=-created_at -L 10

# JSON 给脚本消费
$ cnb-rs --json pr list -s open | jq '.[].number'

列设计

默认模式(5 列)

宽度说明
NUMBERfixed 7#42
TITLEflex 20标题(content-aware,按数据自然宽度)
LABELSflex 6标签 name 逗号分隔;空时 -
UPDATEDfixed 14相对时间,如「约 2 小时前」
RELATIONfixed 8ME-> / ->ME / ME->ME

filter 模式(5 列)

宽度说明
NUMBERfixed 7#42
TITLEflex 20同上
STATEfixed 8open / closed / merged
LABELSflex 6同上
UPDATEDfixed 14同上

API 调用

模式API说明
默认list_pulls × 2(authors=me + reviewers=me)tokio::join! 并发
filterlist_pulls × 1(authors=X 或 reviewers=Y)单次调用

--label / --base-ref / --sort / --limit 在两种模式都生效,透传给 API。

另请参阅

Released under the MIT License.