概要
git-bug は、 Gitリポジトリ だけで動作する分散型バグトラッカー オフライン対応 や ベンダーロックイン防止 など多彩な特徴 CLI・Web・他ツールとの 柔軟な連携 が可能 GitHub/Jira 等、他トラッカーとの 橋渡し機能 も搭載 GPLv3 ライセンスで、貢献者・スポンサーも歓迎
git-bugとは
- Gitに完全統合 されたバグトラッカー
- Gitリポジトリ のみでバグ管理が可能
- 分散型アーキテクチャ によるリモート連携
- オフライン でもバグの閲覧・追加・編集が可能
- ベンダーロックイン防止、バックアップも容易
- 高速動作、バグ一覧や詳細表示がミリ秒単位
- プロジェクト汚染なし、追加ファイル不要
- 多様なUI (CLI・ターミナルUI・WebUI)とツール連携
- 他バグトラッカーとのブリッジ 機能
- インストール方法 はINSTALLATION.mdを参照
ワークフロー
- ネイティブワークフロー
- git bug push/pull でバグ情報をリモート同期
- コード管理と同様の体験
- ブリッジワークフロー
- 他バグトラッカーと同期 (例:GitHub, Jira, GitLab, Launchpad)
- git bug bridge pull/push でインポート・エクスポート
- ターミナルやエディタ連携、オフライン利用も可能
- Web UIワークフロー(開発中)
- 外部OAuth認証 によるパブリックポータルを目指す
- コントリビューション歓迎
CLIの利用例
- 新しいユーザー作成
git bug user create
- バグ追加
git bug add(エディタでタイトル・本文記入)
- リモートへバグをプッシュ
git bug push [<remote>]
- リモートからプル
git bug pull [<remote>]
- バグ一覧表示
git bug ls
- クエリでフィルタ・ソート
git bug ls "status:open sort:edit"
- テキスト検索
git bug ls "foo bar" baz
- 詳細表示・コメント・オープン/クローズ等
git bug <command> --helpで詳細確認
インタラクティブUI・WebUI
- ターミナルUI
git bug termuiでバグの閲覧・編集が可能
- Web UI
git bug webuiでリッチなWebインターフェース- バグ管理・コメント・ラベル編集等
- コードブラウザ 機能(ファイルツリー・コミット履歴・差分表示)
- GraphQL API による拡張性
ブリッジ機能
- GitHub, GitLab, Jira, Launchpad とのインポート・エクスポート
- 新規ブリッジ作成
git bug bridge newまたはgit bug bridge new \ --name=<bridge> \ --target=github \ --url=https://github.com/git-bug/git-bug \ --login=<login> \ --token=<token>
- バグのインポート
git bug bridge pull [<name>]
- 変更のエクスポート
git bug bridge push [<name>]
- ブリッジ削除
git bug bridge rm [<name>]
内部仕様・拡張
- データモデル・内部構造 はgit-bug specで詳細記載
- DAGエンティティ形式、ID管理、バグエンティティ仕様
- 独自実装やツール開発 にも活用可能
- Bash, Zsh, fish, Powershell 用補完スクリプト
- ManPages も提供
今後の予定・貢献
- WebUIのパブリックポータル 化、ユーザー入力受付機能
- その他新機能 はfeature matrix参照
- コントリビューション歓迎、Matrixルームでの議論やPR受付
- 開発環境構築・テスト手順 はCONTRIBUTING.md参照
- WebUI開発 は専用READMEを確認
ライセンス・クレジット
- GPLv3以降 ライセンス
- ロゴ はViktor Teplov作、CC BY 4.0ライセンス
- 貢献者・スポンサー への感謝
- バッカーやスポンサー も随時募集中
誰かがfossil-scmのレッスンを受けてるみたい。すごくいい感じだね。