プログラミング
Git-bug: Gitに埋め込まれた分散型オフラインファーストのバグトラッカー
Git-bug: Distributed, offline-first bug tracker embedded in Git (github.com)
要約
Git-bugは、Gitリポジトリに統合された分散型のバグトラッカーです。Gitの通常のリモートを使用してバグを共同作業、プッシュ、プルでき、オフラインでも作業可能です。ベンダーロックインを防ぎ、プロジェクトを汚染せず、ミリ秒単位で高速に動作します。CLI、ターミナルUI、Web UI、GraphQL APIを通じてツールと統合でき、GitHub、GitLab、Jira、Launchpadなどの他のバグトラッカーへのブリッジも提供しています。
全文翻訳
git-bug Issues - ドキュメント - ディスカッション
git-bugはバグトラッカーであり、以下の特徴があります。
gitに完全に統合されている:バグトラッカーを持つにはGitリポジトリがあれば十分
分散型:通常のGitリモートを使用して共同作業、バグのプッシュとプルを行う
オフラインで動作:飛行機の中や海の下?読み書きを続けてください!
ベンダーロックインを防ぐ:通常のサービスがダウンしたり、悪化したりしましたか?すでに完全なバックアップがあります。
高速:バグのリスト表示やオープンはミリ秒単位で行われます
プロジェクトを汚染しない:プロジェクトにファイルを追加しません
ツールと統合:好きなUI(CLI、ターミナル、Web)を使用するか、CLIまたはGraphQL APIを通じて既存のツールと統合します
他のバグトラッカーへのブリッジ:ブリッジを使用して他のトラッカーにインポートおよびエクスポートします
インストール
ソースからビルドしてインストールを確認する方法を含む完全なガイドについては、INSTALLATION.mdを参照してください。
ワークフロー
git-bugを使用するにはいくつかの方法があります。詳細については、ワークフローのドキュメントを参照してください。
ネイティブワークフロー
これは純粋なgit-bug体験です。コードと同様に、git bug pushとgit bug pullを使用して、Gitリモート間でバグをプッシュおよびプルし、チームメイトと共同作業します。
ブリッジワークフロー
git-bugには他のバグトラッカーとのブリッジがあるため、個人のローカルリモートインターフェイスとして使用できます。git bug bridge pullとgit bug bridge pushで同期し、ターミナルから作業したり、エディタに統合したりできます。オフラインでも動作します!
Web UIワークフロー(WIP)
多くの場合、プロジェクトはバグトラッカーを公開し、問題に直面した人からの編集を受け入れる必要があります。このワークフローをサポートするために、git-bugはWeb UIが外部OAuth認証を受け入れ、公開ポータルとして機能することを目指しています。ただし、Web UIはまだそのレベルには達していません。貢献は非常に歓迎されます!
CLIの使用
新しいIDを作成する: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
show、comment、open、closeなどのコマンドを使用してバグを表示および変更できるようになりました。各コマンドの詳細については、git bug <command> --helpを実行するか、コマンドのドキュメントをお読みください。
インタラクティブターミナルUI
git bug termuiコマンドを使用して、バグをブラウズおよび編集できるインタラクティブなターミナルUIが利用可能です。
Web UI
git bug webuiでリッチなWeb UIを起動できます。問題をブラウズ、検索、フィルターし、新規作成、コメント、タイトル、ラベル、ステータスを編集します。また、ファイルツリー、構文ハイライトされたファイル、コミット履歴、差分を備えたリポジトリのコードブラウザとしても機能します。Web UIは同じgoバイナリ内にパッケージ化されており、ローカルHTTPサーバーによって提供されます。GraphQL APIを通じてバックエンドと通信し、そのスキーマはここにあります。
ブリッジ
git-bugは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>]
内部構造
仕組みに興味がありますか?データモデルと内部の鳥瞰図をご覧ください。ディスク上の形式は、DAGエンティティ形式、ID、およびバグエンティティをカバーするgit-bug仕様で正式に指定されています。別の実装を書きたい場合や、git-bugデータを直接読み取るツールを書きたい場合は、それを読んでください。または、Gitで独自の分散データ構造を作成したいですか?すべてのドキュメントも参照してください。
その他
Bash、Zsh、fish、powershell補完
ManPages
計画中の機能
機能マトリックスは、網羅的ではありませんが、計画されていることの概要を示しています。追加の計画中の機能:ユーザー入力を受け入れる公開ポータルとして使用できるwebUI
膨らませることができるラプター
貢献
PRは受け付けます。Matrixルームでチャットしたり、機能マトリックスを見たり、Issueやディスカッションを閲覧して、何が作業されているか、または議論されているかを確認してください。開発環境をセットアップし、プロジェクトをビルドしてテストを実行するには、CONTRIBUTING.mdを参照してください。Web UIに取り組むには、専用のREADMEを参照してください。
貢献者❤️
このプロジェクトは、貢献してくれたすべての人々のおかげで存在しています。
バッカー&スポンサー
すべてのバッカーとスポンサーに感謝します!🙏 [バッカーまたはスポンサーになる]
ライセンス
特に記載がない限り、このプロジェクトはGPLv3以降のライセンスでリリースされています © Michael Muré。Viktor Teplovによるgit-bugロゴは、Creative Commons Attribution 4.0 International(CC BY 4.0)ライセンス © Viktor Teplovでリリースされています。