読み方 : ギットバケット
GitBucket
GitBucketとは?
Gitリポジトリを自組織のサーバ上で管理・運用するためのオープンソースソフトウェア。GitHubに似たWebインターフェースを備えており、Webブラウザ上でソースコードの管理やチーム開発に必要な一連の操作を行える。Scalaで実装されており、Javaの実行環境で動作する。

GitHubのような外部ホスティングサービスは手軽に使える一方、セキュリティ上の理由や社内規定から、ソースコードを社外に置けない組織も少なくない。GitBucketは自前のサーバに設置して運用するため、コードを外部に出すことなくGitHubに近い開発環境を構築できる。
主な機能は基本的にGitHubに揃えられており、リポジトリの作成や閲覧、履歴管理に加え、バグや作業項目をチケットとして扱うイシュー管理(Issues)、変更内容を確認・承認するプルリクエスト、情報共有のためのWikiなどを標準で利用できる。複数リポジトリをまとめるOrganization機能や利用者ごとのアクセス権限設定にも対応しており、チーム開発の運用に必要な仕組みが一通り揃っている。
単一のWARファイルとして配布されており、TomcatやJettyといったJavaのサーブレットコンテナに配置するだけで起動できる。初期状態では組み込みの「H2 Database」が自動的に使われるため、データベースを別途用意する必要がない。大規模な運用ではMySQLやPostgreSQLへの切り替えも可能で、小規模な個人利用から中規模のチーム開発まで幅広い環境に対応できる。
プラグイン機構も備えており、認証方式の追加や継続的インテグレーション(CI)との連携など、必要に応じて機能を拡張できる。GitHubのAPIとの互換性を意識した設計のため、GitHub連携を前提とした既存ツールをそのまま流用できる場合もある。Apacheライセンスに基づいて配布されており、商用利用を含め自由に利用・改変が可能である。