GitLabと他のツールとの比較

vs.

Bamboo vs GitLab

Bambooサーバーは、Atlassianの開発ツールスイートの一つの、CI/CDソリューションです。セルフマネージド構成のみが利用可能な、クローズドソース向けのソリューションです。Bambooはビルド・テスト・デプロイメントの自動化を提供します。また、ソースコード管理のためにAtlassian Bitbucketやソースコードがどのように変更されたのかを理解するのに役立つFisheyeとの連携が優れています。さらに、150以上のツールと連携出来ます。一方、GitLabは、単一のアプリケーションで、Gitベースのソースコード管理・インテグレーション・コード変更のトレーサビリティーを提供します。

Bambooはビルド計画を定義するためのGUIを提供しますが、コードで定義可能なパイプラインを提供しません。また、Bambooはデプロイメント計画・プレデプロイメントビジビリティ・環境毎デプロイメント権限を提供します。GitLabは環境毎のリリーストラッキングやデプロイメントでの変更を可視化する機能を提供しますが、デプロイメントの権限はブランチの権限で制御する必要があります。

Elastic Bambooと呼ばれる機能でBambooを構成している場合は、Bambooのステップはエージェント横断的に並列実行することが可能で、それらのエージェントは必要に応じてオートスケールさせることができます。Elastic Bambooを利用するには、追加の費用を支払い、「リモートエージェント」が必要です。オートスケール機能を使用するには、AWS EC2を利用する必要があり、AWSの利用料金が別途かかります。一方、GitLabではリモートエージェント(Runner)の利用に追加の費用は発生せず、様々なクラウドやコンテナソリューションでスケールします。


機能

統合されたCI/CD

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabにはCI/CD機能が統合されているので、CI/CDのために他のツールをインストールする必要はありません。GitLabのCI/CDを使用して、ウェブサイト(GitLab Pages)やウェブアプリケーションをビルド・テスト・デプロイできます。ジョブの結果はマージリクエストに表示され、簡単にアクセスできます。

CI/CDの詳細

アプリケーションのパフォーマンス監視

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

Prometheusを利用して、GitLabはデプロイしたアプリケーションのパフォーマンスメトリクスを収集し表示できます。開発者はマージが本番環境に与える影響を、GitLabから離れることなく、簡単に確認できます。

デプロイしたアプリケーションの監視の詳細

GitLabサーバーの監視

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

オンプレミスで運用しているGitLabサーバーをPrometheusで監視できます。これにより、自身のGitLabサーバーの稼働状況を簡単に確認できます。

GitLabサーバーの監視の詳細

サイクル分析

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabは計画からモニタリングまでに要した時間を計測するためのダッシュボードを提供します。GitLabには、アイディアを本番環境にデプロイするまでに必要なツールのすべてが組み込まれているので、このようなデータの提供が可能です。

サイクル分析の詳細

Review Appsで変更をプレビュー

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CI/CDを利用して、ブランチごとに新しい環境を作成することができ、開発プロセスを高速化できます。 自分のブランチをプレビューできるマージリクエスト用の動的な環境を起動できます。

Review Appsの詳細

包括的なAPI

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabは、インテグレーションの開発を可能にするために、多くの機能をAPIとして提供しています。

APIのドキュメントを表示

GitLab CI/CDの水平オートスケーリング

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CI/CDのクラウドネイティブなアーキテクチャでは、ワークロードが増加した場合に、新しいノードを追加することで簡単に水平方向にスケールできます。GitLab Runnerはパイプライン処理が開始されると、自動的に新しいコンテナを作成し、処理が完了して不要になったコンテナを削除します。これにより、CI/CDのコストを抑えることができます。.

GitLab CI/CDの水平オートスケーリングの詳細

クラウドネイティブ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabとGitLab CI/CDはクラウドネイティブな設計で開発されています。GitLab は Kubernetes 上に簡単にデプロイできます。また、Gitlab を使用してアプリケーションをそのまま Kubernetes に対しデプロイできます。

Kubernetes 連携

統合されたウェブターミナルでコンテナをデバッグ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLabにビルトインされたウェブターミナルを使用すると、あらゆる環境のコンテナを簡単にデバッグできます。アプリケーションをKubernetesにデプロイしている場合は、GitLabの環境メニューから直接ターミナルのセッションを開始することができます。この強力な機能により、ブラウザから離れることなく、問題の調査を素早く行うことができます。

ウェブターミナルの詳細

柔軟なパイプライングラフ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

複数のジョブを直列、または並列に実行するパイプラインの構造は非常に複雑です。 GitLabでは単一のパイプライングラフですべてのジョブのステータスを表示できるので、 何が起こっているのかを簡単に確認できます。

パイプライングラフの詳細

HTML成果物をオンラインで表示

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

テストレポート、コード品質、コードカバレッジなどの情報を、 ダウンロードせずに、直接ブラウザで表示できます。

プロジェクト内のジョブアーティファクトの利用の詳細

成果物をブラウズ可能

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CIを使用すると、外部サービスを必要としないで、GitLab内にジョブの成果物をアップロードできます。 これによって、アップロードした成果物をGitLabのウェブインターフェースで表示できます。

プロジェクト内のジョブアーティファクトの利用の詳細

パイプラインをスケジュール実行

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

cronのように、パイプラインをスケジュール実行できます。

GitLabでパイプラインがスケジュール実行される仕組の詳細

コード品質

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

マージリクエストのウィジェットエリアに表示されるコード品質レポートにより、 変更がコードの品質に与える影響を事前に知ることができます。

コード品質レポートの詳細

複数プロジェクトのパイプライングラフ

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

マイクロサービスアーキテクチャでは、パイプラインの設計はより複雑なものになります。 複数プロジェクトのパイプライングラフを使用すると、アップストリームとダウンストリームのパイプラインが、プロジェクトのトリガーを通して、どのように協調しているのかを表示することができます。

複数プロジェクトのパイプライングラフの詳細

保護変数

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

権限のあるユーザーだけが変数の値を取得できるように、変数を保護することができます。 「保護変数」は「保護ブランチ」で実行されているジョブからだけ取得できます。

保護変数の利用方法の詳細

デプロイメントプロジェクト

デプロイメントプロジェクトには、ビルドおよびテストされたリリースやリリースがデプロイされた環境など、デプロイしているソフトウェアプロジェクトが含まれます。

GitLabのプロジェクトの詳細

環境とデプロイメント

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

GitLab CIを使用すると、ビルドやテストだけではなく、インフラへのデプロイもできます。 また、CIのジョブのタグに似ている、環境を利用するとデプロイ履歴をトラッキングできます。

環境の詳細

環境ごとの権限

本番環境とは別に、開発者やQA担当者はそれぞれの環境に対してデプロイできます。これにより、ビルドエンジニアや運用チームにデプロイを依頼する必要がなくなり、彼らの負担を下げることができます。

GitLabの保護ブランチの詳細

環境履歴

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

環境履歴を使用するとサーバーに現在、何がデプロイされているのかを確認できます。また、環境の詳細画面では過去のすべてのデプロイ情報を表示できます。 この画面から現在のバージョンを再デプロイしたり、何か問題が発生した場合は、過去の安定バージョンにロールバックすることができます。

環境履歴の詳細

特定環境用の変数

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

どの環境から変数の値を取得できるのか制限することができます。

特定環境用変数の設定方法の詳細

グループレベル変数

CORE
STARTER
PREMIUM
ULTIMATE
FREE
BRONZE
SILVER
GOLD

グループレベルで変数を定義し、グループ内のすべてのプロジェクトから使用することができます。

変数の設定方法の詳細

悪いテストを隔離

テストが失敗することを常態化させてはなりません。1クリックで不安定なテストや壊れたテストを一時的に蚊帳の外に置いて、テストをGreenな状態に保つことができます。

GitLabでの脆弱性の排除の詳細

Download as PDF

この文章の大部分が、GitLabのファンによって書かれています。 そのため、GitLabに対するバイアスがかかっている可能性があります。 しかし、できる限り公正で事実に基づいた比較を行いたいと考えています。 GitLabにはない、他の製品の優れた機能があれば、ぜひ追加をしてください。 もしも、比較表に間違いやバイアスや漏れや古くなった内容を見つけた場合は、 このウェブサイトを修正するマージリクエストを投稿してください。 このウェブサイトのすべてのページは、フッターにあるリンクをたどって、 修正のマージリクエストを投稿することができます。

GitLabはGitLab, Inc.の商標です。その他のすべての商標・ロゴマークの権利はそれぞれの所有者に帰属します。

GitLabはオープンコア

GitLabの競合製品のほとんどはソースコードを公開していませんが、GitLabはオープンコア製品です。 GitLabコミュニティエディションは完全なオープンソースで、 GitLabエンタープライズエディションはオープンコア(プロプライエタリ)です。

ソースコードにアクセス

クローズドソースなソフトウェアと異なり、 コミュニティエディションエンタープライズエディションの ソースコードを確認したり、修正することができます。 機能の追加やカスタマイズのために、サーバーのソースコードを修正したり、GitLabのリポジトリをフォークすることができます。 独自に実施した変更はメインのソースコードにフィードバックし、マージされるように挑戦することを推奨します。 それにより、他のユーザーの役に立つ上に、自身のインスタンスのアップデート作業を簡単に保つことができます。

コミュニティからの貢献

GitLabには毎月数百人からの貢献があります。 顧客・ユーザー・GitLab社員のすべてが毎月のリリースに貢献しています。 このことは、簡単に使用できる便利なユーザー管理のような、 組織にとって本当に必要な機能の開発に役立っています。

長期利用に最適

GitLabは、数十万の組織が利用し、頻繁にソフトウェアへ貢献しています。 GitLabには堅牢なコミュニティが存在します。 つまり、GitLabは単一企業のサポートに依存していないので、 長期利用に適しています。

毎月、新しい安定版がリリース

毎月、機能の改善と新機能の追加と不具合の修正のすべてが適用された、 GitLabの新しい安定版がリリースされます。 これにより、GitLabはとても迅速に顧客の要望に応えることができます。

日本語でのサポートが必要な場合は 国内正規販売代理店 へお問い合せください。

無料で30日間、 GitLab Ultimate を試用できます。