Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
GitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
=============================================================================== Overview -------- 'cil' allows easy command-line creation of an issue tracker. It saves each issue locally and in plain text. Commands are given such that these issues can be added, edited and listed easily. =============================================================================== Quick Start ----------- Once installed, you should be able to run 'cil': $ cil --help Now change directory to your current development project. To save the issues, 'cil' requires setting up, so issue the 'init' command: $ cil init This creates a '.cil' file and an 'issues/' directory. Then add an issue. An editor will pop-up and you fill in the details: $ cil add After you've added it, you can see a representation of the issue. Now you can list all the issues by using the 'list' command: $ cil list When listing the issues, they can also be filtered: $ cil list --status=New $ cil list --label=Type-Enhancement $ cil list --is-open $ cil list --label=Milestone-v0.3 --is-open $ cil list --is-mine You can see what the issue name is by looking at the 'Issue' title. Imagine it is 'cafebabe' (which by default is the time from epoch). To see your issue again, use the 'show' command: $ cil show cafebabe Another reporting command is 'summary' for which all the filter options also apply: $ cil summary $ cil summary --status=New $ cil summary --label=Type-Enhancement $ cil summary --is-open $ cil summary --label=Milestone-v0.3 --is-open The columns show 'Name', 'Status', 'CreatedBy' and 'Summary'. Shucks, we've noticed we got something wrong in the issue. Let's edit it: $ cil edit cafebabe Save your changes and exit your editor. The issue is now saved. Try showing it again to make sure your changed are correct. We have just found out more about the issue so let's add a comment to it: $ cil comment cafebabe When you show the issue again, you'll see the comment has been added and is now displayed. Adding an attachment is easy: $ cil attach cafebabe core ... added attachment 'decaf7ea' ... $ cil show cafebabe If someone else added the attachment and you wish to view it, you can extract it from the issue: $ cil extract decaf7ea --filename=mycore If someone sends you a bug report or a comment via email and you wish to import it into your issues list, you can use the 'am' command to do it's best to import it. It will try and figure out if an issue is already mentioned and if so, will try and import the email as a comment for that particular issue. In the case where an existing issue is not found, it will import the email as a new issue: $ cil am email.txt Finally, because the cil issue files reside on the filesystem in flat files, there needs to be a way to check the integrity of the issues, therefore you can run this to do checks regarding the whole issue list: $ cil fsck That's it for now. As you can see, if you've played with any kind of bug/issue tracker before, 'cil' is straightforward. Sometimes, you might add someone else's repository from which you want to fetch both code and issues. If you merge a new issue and you want to assign it to yourself, instead of editing the issue and having to type in your name and email, just use 'cil steal'. This will assign the issue to yourself and save it back out: $ cil steal cafebabe Then just commit it to your VCS. ===============================================================================