Bug - a distributed bug tracking system
来自: https://github.com/driusan/bug
Bug
Bug is an implementation of a distributed issue tracker using git (or hg) to manage issues on the filesystem following poor man's issue tracker conventions.
The goal is to use the filesystem in a human readable way, similar to how an organized person without any bug tracking software might, by keeping track of bugs in an issues/ directory, one (descriptive) subdirectory per issue. bug provides a tool to maintain the nearest issues/ directory to your current working directory and provides hooks to commit (or remove) the issues from source control.
This differs from other distributed bug tracking tools, (which usually store a database in a hidden directory) in that you can still easily view, edit, or understand bugs even without access to the bug tool. bug only acts as a way to streamline the process of maintaining them. Another benefit is that you can also have multiple issues/ directories at different places in your directory tree to, for instance, keep separate bug repositories for different submodules or packages contained in a single git repository.
Because issues are stored as human readable plaintext files, they branch and merge along with the rest of your code, and you can resolve conflicts using your standard tools.
Installation
If you have go installed, install the latest released version with:
go get github.com/driusan/bug
Make sure $GOPATH/bin or $GOBIN are in your path (or copy the "bug" binary somewhere that is.)
Otherwise, you can download a 64-bit release for OS X or Linux on thereleases page.
(The latest development version is on the latest v0.x-dev branch)
Sample Usage
If an environment variable named PMIT is set, that directory will be used to create and maintain issues, otherwise the bug command will walk up the tree until it finds somewhere with a subdirectory named "issues" to track issues in.
Some sample usage (assuming you're already in a directory tracked by git):
$ mkdir issues $ bug help Usage: bug command [options] Use "bug help [command]" for more information about any command below Valid commands Issue editing commands: create File a new bug list List existing bugs edit Edit an existing bug tag Tag a bug with a category relabel Rename the title of a bug close Delete an existing bug status View or edit a bug's status priority View or edit a bug's priority milestone View or edit a bug's milestone Source control commands: commit Commit any new, changed or deleted bug to git purge Remove all issues not tracked by git Other commands: env Show settings that bug will use if invoked from this directory pwd Prints the issues directory to stdout (useful subcommand in the shell) roadmap Print list of open issues sorted by milestone version Print the version of this software help Show this screen $ bug create Need better help (Your editor opens here to enter a description) $ bug list Issue 1: Need better help $ bug list 1 Title: Need better help Description: The description that I entered $ bug purge Removing issues/Need-better-help $ bug create -n Need better formating for README $ bug list Issue 1: Need better formating for README $ bug commit $ git push
Feedback
Currently, there aren't enough users to set up a mailing list, but I'd nonetheless appreciate any feedback at driusan+bug@gmail.com .
You can report any bugs either by email, via GitHub issues, or by sending a pull request to this repo.