GerritとGitLabの比較 | GitLab.JP

このページでは、GerritとGitLabを比較しています。それぞれの強みや不足部分を確認して、判断材料にしてください。

Gerrit は無料の Web ベースのチーム用のソースコードコラボレーションツールです。ソフトウェア開発チームの開発者は、Web ブラウザーを使用してお互いのソースコードの変更をレビューし、それらの変更を承認または拒否できます。Gerrit は別のコードレビューツールである Rietveld のフォークです。

On this page

Summary

Gerrit is a free, web-based team code collaboration tool. Software developers in a team can review each other's modifications on their source code using a Web browser and approve or reject those changes. It integrates closely with Git. It was originally developed as a code review system for Android development. Gerrit includes code diffs, discussions, a and a git server.

In contrast, GitLab provides a git server, with issues and issue tracking, as well as code review, and features to automate the entire DevOps lifecycle.

Comments/Anecdotes

Resources

Comparison

FEATURES

コミュニティによるサポート

GitLabコミュニティフォーラムは、すべてGitLabユーザのための活発なコミュニティで、情報共有やサポートを得られる場です。

コミュニティフォーラムを表示

画像に関する議論

コミット画面やマージリクエストの差分画面で、画像の特定の位置を指定して、画像に関する議論をコメントできます。1つの画像に対して複数の議論を作成できます。

画像に関する議論

マージリクエストのコミットに関する議論

マージリクエストのコミットに対してコメントをすることができます。

マージリクエストのコミットに関する議論

Multiple approvers in code review

In GitLab, to ensure strict code review, you can require a minimum number of users to approve of a merge request before it is able to be merged. 一度承認した後で問題に気がついた場合は、承認を取り消すこともできます。

承認機能のドキュメント

コードレビューの承認ルール

Make sure the right people review merge requests with approval rules by specifying lists of eligible approvers, the minimum number of approvals for each, and which target branches they protect. This makes it easy to request review from different teams like Engineering, UX and Product.

承認機能のドキュメント

マージの承認

GitLab Enterprize Editionではマージリクエストをマージするのに、複数の承認を必須とすることができます。マージに必要な承認の数や承認可能なユーザーを設定することは、コード品質の改善につながります。

マージリクエストの承認の詳細

インラインコメントと議論の解決

マージリクエストのインラインコメントを使用すると、コードやテキストのレビューがより高速かつ効果的になります。特定のコード行についてコメントを残し、議論を解決します。GitLab では、マージリクエストのインラインコメントは議論として解釈され、変更されてもされなくても任意の行に残すことができます。すべての議論が解決されたときにのみマージリクエストが承認されるようにプロジェクトを構成できます。

議論の解決の詳細

コード所有者

ファイルにコード所有者を割り当てて、 `CODEOWNERS` ファイルを使用してプロジェクトのコードを担当するチームメンバーを指定します。コード所有者はマージリクエストの承認者として自動的に割り当てられ、必要に応じて設定し、ファイルを表示するときにそれらを表示できます。

コード所有者の詳細

Git プロトコル v2 サポート

Git のワイヤプロトコルは、クライアントとサーバの間でクローン、フェッチ、プッシュがどのように通信されるかを定義します。Git プロトコル v2 は、フェッチコマンドのパフォーマンスを改善し、将来のプロトコル改善を可能にします。

Git プロトコル v2の詳細

コードレビューダッシュボード

フィルター可能なコードレビューのセット (プロジェクト、ユーザー、ブランチ、ステータス、もしくはそれらの組み合わせ) を含むダッシュボードです。ダッシュボードには、コードレビューのステータスとそれらにアクセスするリンクが含まれます。これにより、目的のサブセットのコードレビューで行われていることを簡単に確認できます。

GitLab でのコードレビュー

貢献者の規約

ユーザーはプロジェクトの変更を送信する前に、1つ以上の貢献者規約に署名する必要があります。

この課題の詳細を確認

ロボットのコメント

自動化されたサードパーティシステムによって生成されるインラインコメントをサポートします。例えば、ロボットのコメントを使用してコードアナライザーの結果を表すことができます。

GitLab のマージリクエストでのストア結果

複数のリポジトリタイプで動作します。

Git, Subversion, Perforce, CVS, Mercurial などの複数のリポジトリタイプをサポートします。

他の SCM からの移行の詳細

投票に基づくマージの許可/拒否

レビュアからの投票結果に基づいてマージを許可/拒否します。変更のマージを決定するときの柔軟性が向上します。

この課題の詳細を確認