与VCS一起使用的简单问题跟踪程序

issue的Python项目详细描述


小型命令行问题跟踪程序,主要用于单人项目 你不想依赖Github之类的东西来追踪你的 但希望在存储库中保持问题跟踪。

py需要python3,但不依赖于任何外部库。

命令行

安装

# easy_install issue

# pip install issue

或者,如果您只想在没有根访问权限的情况下安装它,可以添加 --user到其中一个命令,例如

$ pip install --user issue

它将在~/.local/bin/中安装issue.py,您只需将其添加到 $路径。

开始

$ issue.py init
$ issue.py add -d "my new issue"
$ issue.py add -t enhancement -d "my enhancement proposal"
$ issue.py
open   1   bug           2013-12-27   my new issue
open   2   enhancement   2013-12-27   my enhancement proposal
$ issue.py close 1
closed   1   bug           2013-12-27   my new issue

使用量

usage: issue.py [-h] [subcommand] ...

Simple issue handler

optional arguments:
-h, --help            show this help message and exit

subcommands:
{add,edit,close,search,se,show,init,remove,rm}
    add                 Add new issue
    edit                Edit individual issue
    close               Close an issue
    search (se)         Search issues
    show                Show more information on individual issue
    init                Initialize issue file
    remove (rm)         Remove an issue

制作问题文件

要创建新的ISSUES文件,可以使用

$ issue.py init [-g] [-f]

基本上就是生成一个包含[]的文件。如果您指定 -g使gzip压缩问题文件。压缩文件不起作用 很好的版本控制系统,但是如果你 就像。如果已经有要压缩的问题文件,可以 只需使用

压缩ISSUES文件
$ gzip ISSUES

它将使ISSUES.gz透明地与issue.py一起工作。 类似地,如果要移回未压缩的文件,可以 用

$ gzip -d ISSUES.gz

如果您已经有一个ISSUES文件,issues.py不会覆盖它,但是 您可以强制它使用-f创建文件。不会的 实际上删除旧文件,但是简单地将其移到一边。

添加问题

添加问题的基本方法是执行

$ issue.py add -d "My issue description"

可以添加-t以在逗号分隔的列表中指定标记。如果你 指定none,则假定为-t bug

您也可以不使用-d,issue.py将打开默认编辑器 为您在$EDITOR环境变量中指定的。在编辑器中 可以编写多行问题描述,其中第一行将用作 标题和将显示在默认问题列表中。您可以查看 带issue.py show <issue>

的完整描述

示例

要添加feature标记的问题,可以执行

$ issue.py add -t feature -d "Add support for .gz files"

您也可以用逗号指定多个制表符,但不使用空格

$ issue.py add -t bug,critical -d "Game crashes on save"

结束问题

解决问题很简单

$ issue.py close <number>

其中<number>是要关闭的问题编号。这个遗嘱 只需将问题状态更改为“已关闭”。结束问题将打印 关闭的问题,该问题将不再显示在问题列表中 违约。您仍然可以使用issue.py search

找到它

示例

$ issue.py close 4
closed   4   Feature   2013-12-27   Laser effects would be cool

编辑问题

您可以使用编辑任何问题

$ issue.py edit <number> [-t tag] [-s status] [-d description|-e]

它允许您根据需要编辑问题的标记、状态和描述。 -e不能与-d description一起使用。使用-d您可以 在命令行中指定问题的新描述,但如果 希望更轻松地编辑描述,或者如果问题描述是 多行,您可以使用-e在编辑器中打开 编辑。

-t允许您通过在中指定+-来添加和删除标记 在标记列表的前面,或者可以使用=替换所有标记 一起。不能同时添加和删除标记。

示例

要将功能标签添加到第6期:

$ issue.py edit 6 -t+feature

删除标记的工作原理类似。从问题46中删除critical标记

$ issue.py edit 46 -t-critical

您还可以在命令行上指定多个标记

$ issue.py edit 7 -t+bug,low

要将问题状态更改为wontfix,可以执行

$ issue.py edit 9 -s wontfix

将问题状态更改为closed,并添加critical标记:

$ issue.py edit 3 -s closed -t+critical

搜索问题

搜索问题与编辑问题非常相似。您可以指定任何 通过-t-s-d来按标记、状态或 分别描述。将通过诽谤对公开问题进行调查T, 但是您可以通过指定-s all来搜索所有问题。您可以指定 同时使用逗号分隔多个标记

示例

使用bug标记搜索所有问题:

$ issue.py search -s all -t bug

使用feature标记搜索已解决的问题:

$ issue.py search -s closed -t feature

要搜索crash关键字的未解决问题,只需执行

$ issue.py search -d crash

如果您还记得一个带有criticalbug标记的旧关闭错误 上面写着“不可能,你可以做”

$ issue.py search -s closed -t critical,bug -d impossible

显示

查看不适合的多行问题或问题描述 终端宽度,您可以使用

$ issue.py show <issue>

示例

$ issue.py show 7
Status: open
Number: 7
Tag:    bug
Date:   2013-12-28

Program crashes when you specify both -e and -d
I found a way to make the program crash by doing

    $ issue.py edit 6 -d "will crash" -e

I get "Generic error"

消除问题

若要删除问题,您只需执行

$ issue.py remove <issue>

不建议使用remove,因为删除操作无法撤消, 但您可以关闭它,也可以将其标记为wontfix

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在linux中使用命令行编译eclipse项目?   java从excel单元格值读取和提取文件名   mongodb游标异常Java   如何在Java中从randDouble中随机获得1100之间的值?   java使用bean引用从SpringXML配置迁移到@configuration(Servlet3.0)会导致BeanNotOfRequiredTypeException   java我是否正确地实现了deltatime?   java将CSV内容附加到邮件中   数据库中具有重复值的java Hibernate update语句   c#如何使用Java在Windows上创建虚拟磁盘(信件、共享等)?   java使用InsertionSort算法对包含空元素的字符串数组进行排序   使用Java正则表达式提取html中的文本   java如何在安卓中使用导入包中的类   检查字符的java规则   不带列名的java DefaultTableModel   java Nillable=false在apache cxf中不起作用   java DecimalFormat无法处理数学问题。圆周率   当用户再次登录时,数据从Firebase数据库中删除   java Android Dropbox API v2使用访问令牌自动访问   从Mockito参数captor捕获时,java函数接口不可序列化