glogiotatidis / gitissius

Distributed Issue Tracking for GIT
http://www.gitissius.org
Other
48 stars 8 forks source link

** About

GitIssius is an issue tracker intergrated in your git repository. In other words a distributed bug tracker.

*** Why bother?

Your code lives in your git repo. Your documentation lives in your git repo. Why aren't your bugs in your git repo?

Git provides a really great version control system. Unlike other systems though it does not provide any functionality related to issue / bug tracking. You have to rely on 3rd party systems like [[http://www.bugzilla.org][Bugzilla]] or GitHub issue tracker to track your bugs.

This is fundamentally wrong!

GitIssius comes in action

GitIssius stores your bugs in the same repo where your code lives. It creates another branch named 'gitissius' which you don't have to checkout ever. Provides a git command named 'issius' to control you issues.

It was inspired by other distributed bug tracking systems like [[http://fossil-scm.org/][Fossil]], [[http://bugseverywhere.org/][BugsEverywhere]] and [[http://ditz.rubyforge.org/][Ditz]]. Started as a fork of [[https://github.com/jwiegley/git-issues][git-issues]] but then realized that I wanted a completelly different code base, so I wrote most things from scratch.

Features

** Installation

*** PyPI (recommended) ~$ sudo pip install gitissius

*** Bleeding Edge

  1. ~$ git clone http://github.com/glogiotatidis/gitissius
  2. ~$ cd gitissius && sudo python setup.py install

** Use

  1. After you finish GitIssius installation go to a git repository.

    ~$ cd /my/git/repo

  2. Start using GitIssius immediatelly!

    • Add a new issue

      • ~$ git issius new
    • List issues

      • ~$ git issius list
    • List issues assigned to you

      • ~$ git issius myissues
    • List issues sorted

      • ~$ git issius list --sort=status
      • ~$ git issius list --sort=assigned_to
    • List issues assigned to 'foo@example.com', sort by status

      • ~$ git issius list --filter=assigned_to:foo@example.com --sort=status
    • List issues assigned everyone but 'foo@example.com'

      • ~$ git issius list --filter=assigned__not:foo@example.com
    • List all issues but new or assigned

      • ~$ git issius list --all --filter=statusnot:new,statusnot:assigned
    • Show an issue

      • ~$ git issius show [issue id]
    • Comment on an issues

      • ~$ git issius comment [issue id]
    • Close an issue

      • ~$ git issius close [issue id]
    • Push GitIssius changes

      • ~$ git issius push
    • Get help

      • ~$ git issius help

*** Tips and tricks

** Community

** Future

A companion web service comes soon! Write down http://www.gitissius.org