1<p align="center">
2 <img width="150px" src="https://cdn.rawgit.com/MichaelMure/git-bug/master/misc/logo/logo-alpha-flat-bg.svg">
3</p>
4<h1 align="center">git-bug</h1>
5
6<div align="center">
7
8Distributed bug tracker embedded in Git.
9
10[](https://travis-ci.org/MichaelMure/git-bug)
11[](#backers) [](#sponsors) [](http://www.gnu.org/licenses/gpl-3.0)
12[](https://godoc.org/github.com/MichaelMure/git-bug)
13[](https://goreportcard.com/report/github.com/MichaelMure/git-bug)
14[](https://gitter.im/the-git-bug/Lobby)
15
16</div>
17
18Would it be nice to not have to rely on a web service somewhere to deal with bugs ?
19
20Would it be nice to be able to browse and edit bug reports offline?
21
22`git-bug` is a distributed bug tracker embedded in `git`. It uses git's internal storage so **no files are added in your project**.
23
24As you would do with commits and branches, you can push your bugs to the same git remote you are already using to collaborate with other people.
25
26:construction: This is for now a proof of concept. Expect dragons and unfinished business. :construction:
27
28## Install
29
30### Go get
31```shell
32go get -u github.com/MichaelMure/git-bug
33```
34
35If it's not done already, add golang binary directory in your PATH:
36
37```bash
38export PATH=$PATH:$(go env GOROOT)/bin:$(go env GOPATH)/bin
39```
40
41### Pre-compiled binaries
42
431. Go to the [release page](https://github.com/MichaelMure/git-bug/releases/latest) and download the appropriate binary for your system.
442. Copy the binary anywhere in your PATH
453. Rename the binary to `git-bug` (or `git-bug.exe` on windows)
46
47That's all !
48
49### Linux packages
50
51* [Archlinux (AUR)](https://aur.archlinux.org/packages/?K=git-bug)
52
53## CLI usage
54
55Create a new bug:
56
57```
58git bug add
59```
60
61Your favorite editor will open to write a title and a message.
62
63You can push your new entry to a remote:
64```
65git bug push [<remote>]
66```
67
68And pull for updates:
69```
70git bug pull [<remote>]
71```
72
73List existing bugs:
74```
75git bug ls
76```
77
78Filter and sort bugs using a [query](doc/queries.md):
79```
80git bug ls "status:open sort:edit"
81```
82
83You can now use commands like `show`, `comment`, `open` or `close` to display and modify bugs. For more details about each command, you can run `git bug <command> --help` or read the [command's documentation](doc/md/git-bug.md).
84
85## Interactive terminal UI
86
87An interactive terminal UI is available using the command `git bug termui` to browse and edit bugs.
88
89<p align="center">
90 <img src="https://cdn.rawgit.com/MichaelMure/git-bug/master/doc/termui_recording.svg">
91</p>
92
93## Web UI (status: WIP)
94
95You can launch a rich Web UI with `git bug webui`.
96
97
98
99
100This web UI is entirely packed inside the same go binary and serve static content through a localhost http server.
101
102The web UI interact with the backend through a GraphQL API. The schema is available [here](graphql/schema.graphql).
103
104## Internals
105
106Interested by how it works ? Have a look at the [data model](doc/model.md).
107
108## Misc
109
110- [Bash completion](misc/bash_completion)
111- [Zsh completion](misc/zsh_completion)
112- [ManPages](doc/man)
113
114## Planned features
115
116- media embedding
117- import/export of github issue
118- extendable data model to support arbitrary bug tracker
119- inflatable raptor
120
121## Contribute
122
123PRs accepted. Drop by the [Gitter lobby](https://gitter.im/the-git-bug/Lobby) for a chat.
124
125## Contributors
126
127This project exists thanks to all the people who contribute.
128<a href="https://github.com/MichaelMure/git-bug/graphs/contributors"><img src="https://opencollective.com/git-bug/contributors.svg?width=890&button=false" /></a>
129
130
131## Backers
132
133Thank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/git-bug#backer)]
134
135<a href="https://opencollective.com/git-bug#backers" target="_blank"><img src="https://opencollective.com/git-bug/backers.svg?width=890"></a>
136
137
138## Sponsors
139
140Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/git-bug#sponsor)]
141
142<a href="https://opencollective.com/git-bug/sponsor/0/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/0/avatar.svg"></a>
143<a href="https://opencollective.com/git-bug/sponsor/1/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/1/avatar.svg"></a>
144<a href="https://opencollective.com/git-bug/sponsor/2/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/2/avatar.svg"></a>
145<a href="https://opencollective.com/git-bug/sponsor/3/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/3/avatar.svg"></a>
146<a href="https://opencollective.com/git-bug/sponsor/4/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/4/avatar.svg"></a>
147<a href="https://opencollective.com/git-bug/sponsor/5/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/5/avatar.svg"></a>
148<a href="https://opencollective.com/git-bug/sponsor/6/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/6/avatar.svg"></a>
149<a href="https://opencollective.com/git-bug/sponsor/7/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/7/avatar.svg"></a>
150<a href="https://opencollective.com/git-bug/sponsor/8/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/8/avatar.svg"></a>
151<a href="https://opencollective.com/git-bug/sponsor/9/website" target="_blank"><img src="https://opencollective.com/git-bug/sponsor/9/avatar.svg"></a>
152
153
154
155## License
156
157Unless otherwise stated, this project is released under the [GPLv3](LICENSE) or later license © Michael Muré.
158
159The git-bug logo by [Viktor Teplov](https://github.com/vandesign) is released under the [Creative Commons Attribution 4.0 International (CC BY 4.0)](misc/logo/LICENSE) license © Viktor Teplov.