#jira #命令行 #终端 #命令行工具 #命令行界面

应用 jira-terminal

这是一个命令行应用程序,可以用作与 JIRA 交互的个人生产力工具

11 个稳定版本

2.3.0 2024年4月12日
2.1.0 2023年2月3日
2.0.0 2022年9月15日
1.6.0 2022年8月29日
1.3.0 2021年7月29日

#239命令行工具

Download history 10/week @ 2024-05-19 1/week @ 2024-06-09 1/week @ 2024-06-16

539 每月下载量

AGPL-3.0-only

88KB
1.5K SLoC

Jira Terminal

此应用程序可用于个人用途,从终端管理 jira。

安装

此应用程序可在多个平台上使用。

MacOS

此软件包在 brew 中作为 jira-terminal 提供。您可以使用以下命令安装它

brew tap amritghimire/jira-terminal 
brew install jira-terminal

Arch Linux

此软件包作为 jira-terminal-bin 在 aur 存储库中提供

Debian/Ubuntu

在基于 Debian 的系统上,deb 文件可在 发行版 中找到。您可以从那里下载最新版本。请确保您的系统中已安装 libc。

Cargo

如果您已经设置了 Rust 环境,您可以使用 cargo install 命令: cargo install jira-terminal

Cargo 将构建 jira-terminal 二进制文件并将其放置在 $HOME/.cargo/bin。您还可以从 Rust 官方网站 设置 Rust 工具链

从 GitHub 手动安装

在发布时,编译的二进制版本会被上传到 GitHub。您可以手动安装 jira-terminal,通过 下载发行版、提取它并将二进制文件复制到您的 $PATH 目录中,例如 /usr/local/bin。

自动补全脚本

自动补全脚本可在 发布部分 找到。您可以从那里下载自动补全脚本或使用我们的应用程序生成脚本。要生成脚本,请运行

jira-terminal autocompletion --shell [zsh|bash|fish|powershell|elvish] > _jira.terminal

根据您的 shell,您可以将自动补全文件移动到以下位置

  • ZSH - /usr/share/zsh/site-functions/_jira-terminal
  • BASH - /usr/share/bash-completion/completions/_jira-terminal
  • Fish - /share/fish/vendor_completions.d/_jira-terminal

使用方法

首次运行应用程序时,您将需要以下值。

  • 主机名 [这将用于识别要使用的 jira 主机名。]
  • 电子邮件 [您用于登录应用程序的电子邮件地址.]
  • 令牌 [您可以从应用程序中指定的链接获取应用程序密码]

之后,您可以使用以下命令获取帮助。

jira-terminal help
jira-terminal help list
jira-terminal help transition
jira-terminal help alias
jira-terminal help detail
jira-terminal help fields
jira-terminal help update
jira-terminal help new
jira-terminal help assign
jira-terminal help comment
jira-terminal help autocompletion
JIRA Terminal 2.0.0
Amrit Ghimire <oss@amritghimire.com>
This is a command line application that can be used as a personal productivity tool for interacting with JIRA

USAGE:
    jira-terminal [SUBCOMMAND]

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

SUBCOMMANDS:
    alias             Configuration for alias. One of add,list or remove is required.
    assign            Assign a ticket to user.
    autocompletion    Generate autocompletion script..
    comment           List or add comments to a ticket. Default action is adding.
    detail            Detail of a JIRA tickets..
    fields            List of possible Fields for details...
    help              Prints this message or the help of the given subcommand(s)
    list              List the issues from JIRA.
    new               Create a new ticket.
    transition        Transition of ticket across status.
    update            Update a field for a ticket

工单列表


jira-terminal-list 
List the issues from JIRA.

USAGE:
    jira-terminal list [FLAGS] [OPTIONS]

FLAGS:
    -h, --help       Prints help information
    -J, --json       JSON response
    -M, --me         Issues assigned to you.
    -V, --version    Prints version information

OPTIONS:
    -A, --alias <ALIAS>               Save the applied options as an alias. You can use it with jql option later.
    -a, --assignee <ASSIGNEE>...       Assignee username or email to filter with.
    -c, --component <COMPONENT>...    Component name or ID to filter with.
    -C, --count <COUNT>               Total number of issues to show. (Default is 50)
    -d, --display <DISPLAY>            Comma separated list of fields to display.
                                      Possible options for fields are:
                                      key,resolution,priority,assignee,status,components,creator,reporter,issuetype,project,summary
                                      
                                      You can pass alias as option for display. You can save alias using alias
                                      subcommand for the application.
                                      
                                       Default options are
                                       key,summary,status,assignee
                                                         
    -e, --epic <EPIC>...              EPIC name or issue key of epic to filter with.
    -f, --filter <FILTER>...          Filter name or filter id that you saved in JIRA.
    -j, --jql <JQL>                   JQL Query or alias to JQL query to filter with.
    -l, --label <LABEL>...            Search for issues with a label or list of labels.
    -o, --offset <OFFSET>             Offset to start the first item to return in a page of results. (Default is 0)
    -m, --main <PARENT>...            Search for subtask of a particular issue.
    -P, --priority <PRIORITY>...      Search for issues with a particular priority.
    -p, --project <PROJECT>...        Project Code to filter with.
    -r, --reporter <REPORTER>...      Search for issues that were reported by a particular user.
    -s, --sprint <SPRINT>...          Search for issues that are assigned to a particular sprint.
    -S, --status <STATUS>...          Search for issues that have a particular status.
    -T, --text <TEXT>                 This is a master-field that allows you to search all text fields for issues.
    -t, --type <TYPE>...              Search for issues that have a particular issue type. 

You can specify the following fields multiple time to filter by multiple values.
assignee, component, epic, filter, label, main, priority, project, reporter, sprint, status, type.

For example to fetch list of tickets in Backlog and In progress, you can use
jira-terminal list -s Backlog -s 'In Progress'

转换

jira-terminal-transition 
Transition of ticket across status.

USAGE:
    jira-terminal transition [FLAGS] <STATUS> --ticket <TICKET>

FLAGS:
    -h, --help       Prints help information
    -l, --list       List the possible transitions.
    -V, --version    Prints version information

OPTIONS:
    -t, --ticket <TICKET>    Ticket ID from JIRA.

ARGS:
    <STATUS>    Status or alias of status to move the ticket to.

别名

jira-terminal-alias 
Configuration for alias. One of add,list or remove is required.

USAGE:
    jira-terminal alias [FLAGS] <NAME> --add <add> --list --remove

FLAGS:
    -h, --help       Prints help information
    -l, --list       List the alias saved.
    -r, --remove     List the alias saved.
    -V, --version    Prints version information

OPTIONS:
    -a, --add <add>    Value to associate with provided alias name.

ARGS:
    <NAME>    Name of alias. (Required except for list option)

示例用法

  • jira-终端别名-l
  • jira-终端别名 alias_name-a"别名值"
  • jira-终端别名-r alias_name

详情

jira-terminal-detail 
Detail of a JIRA tickets..

USAGE:
    jira-terminal detail [OPTIONS] <TICKET>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -f, --fields <fields>    Comma separated lists of fields or alias to show.
                             Possible options are: 
                             key,summary,description,status,issuetype,priority,labels,assignee,components,creator,reporter,project,comment
                             
                             You can use all to show all fields.
                             Default selection are:
                             key,summary,description
                                                 

ARGS:
    <TICKET>    Ticket id for details.

字段

jira-terminal-fields 
List of possible Fields for details...

USAGE:
    jira-terminal fields <TICKET>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

ARGS:
    <TICKET>    Ticket id for details.

更新

jira-terminal-update 
Update a field for a ticket

USAGE:
    jira-terminal update <TICKET> --field <field> --value <value>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -f, --field <field>    Key of field to update. You can use jira-terminal fields <TICKET> to see possible set of
                           keys.
    -v, --value <value>    Value of the field to update.

ARGS:
    <TICKET>    Ticket ID to update

新建

jira-terminal-new 
Create a new ticket.

USAGE:
    jira-terminal new [FLAGS] [OPTIONS] --main <main> --project <project>

FLAGS:
    -h, --help       Prints help information
    -M, --minimal    Only summary and description will be asked if not available.
    -q, --quiet      Do not ask for missing options.
    -V, --version    Prints version information

OPTIONS:
    -a, --assignee <assignee>          Assignee email of ticket
    -c, --components <components>      Comma separated list of components of ticket
    -C, --custom <custom>              Comma separated value pair for custom fields. You can use alias in value or key
                                       itself. Example- "customfield_12305:value,alias_to_key:value2. You can use fields
                                       subcommand to check the list of custom fields available. 
    -d, --description <description>    Description of ticket
    -l, --labels <labels>              Comma separated list of labels.
    -m, --main <main>                  Main ticket to create the sub-ticket.
    -p, --priority <priority>          Priority Of the ticket.
    -P, --project <project>            Project Key to create the ticket.
    -s, --summary <summary>            Summary of ticket
    -t, --type <type>                  Issue type for new ticket.

分配

jira-terminal-assign 
Assign a ticket to user.

USAGE:
    jira-terminal assign --ticket <ticket> --user <user>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -t, --ticket <ticket>    Ticket to use.
    -u, --user <user>        Assign the ticket to the provided user.

评论

jira-terminal-comment 
List or add comments to a ticket. Default action is adding.

USAGE:
    jira-terminal comment [FLAGS] [OPTIONS] --ticket <ticket>

FLAGS:
    -h, --help       Prints help information
    -l, --list       List all the comments of a ticket.
    -V, --version    Prints version information

OPTIONS:
    -b, --body <body>        Body of the comment. To mention someone, you can use @(query) The query can include jira
                             username or display name or email address.
    -t, --ticket <ticket>    Ticket to use.

备注

  • 凭据和其他配置存储在文件 ~/.jira_terminal_configuration.json 中。凭据的 base64 编码版本仅写入配置文件。

依赖关系

~5–14MB
~178K SLoC