Lesstep
JetBrains IDE 2024.1 以降

JetBrains IDE で GitLab のマージリクエストをレビュー

IntelliJ IDEA・PyCharm・WebStorm・Rider などの JetBrains IDE で使える、GitLab のマージリクエスト(MR)の無料の受信箱です。 自分のレビューを待っている MR を集め、前回見たあとに何が変わったかを示します。GitLab.com でも、社内の GitLab Self-Managed でも動きます。画面は日本語です。

JetBrains Marketplace で入れる(読むのは無料・書き込みは30日間の無料試用つき)

こんな人向け

ほかの選択肢(JetBrains の IDE に入っている GitLab の機能も)との比べ方はこちら。

GitLab CI のパイプライン・ジョブ・ジョブのログも同じ IDE で:GitLab のパイプラインのプラグイン。

レビューの受信箱

レビュー

仕上げ

無料と有料

無料:受信箱・差分・既読・議論の閲覧・マージの条件・パイプライン・元ブランチのチェックアウト。有料(プラグイン内では「Pro」と表示・30日間の無料試用):承認・変更依頼・コメント・返信・解決・マージ・リベース・準備完了への切り替え・クローズ・MR の作成。

ライセンスは JetBrains Marketplace で販売しています。個人は月 US$1.50・年 US$15、組織は1人あたり月 US$3・年 US$30(Marketplace ではお住まいの通貨で表示されます)。読むだけの人にはライセンスは要りません。

チームで買うとき:組織ライセンスは JetBrains Account で管理し、管理者が開発者に割り当てます(社内の JetBrains License Server からも配れます)。支払いはカードか PayPal。注文書や銀行振込で払うときは、Marketplace のプラグインの値段のページの Get Quote で見積もりを取れます。

入れ方

JetBrains Marketplace から入れるか、IDE の設定のプラグインで Marketplace(マーケットプレイス)のタブを開き、Merge Request Inbox for GitLab を検索します。 リモートが gitlab.com か社内の GitLab Self-Managed(プラグインの設定でアドレスを入れます)にあるプロジェクトを開くと、右のツールウィンドウのバーに GitLab MRs が出ます。

アクセストークン

公開プロジェクトは、MR・マージの条件・差分をトークンなしで読めます。GitLab はコメントをログインした人にしか見せません。 コメント・非公開のプロジェクト・自分のレビューの受信箱には、個人アクセストークンを作ります。承認・コメント・マージもするなら権限(スコープ)は api(Pro を試すなら最初からこちらに)、読むだけなら read_api (作り方・英語。プラグインの設定に、名前と権限を入力済みで作成の画面を開くリンクがあります)。 プロジェクト・グループのアクセストークンも使えます。 設定 | ツール | Merge Request Inbox for GitLab に入れます。GitLab.com 用と Self-Managed のサーバー用に1つずつ。どちらも IDE のパスワード保管庫に入り、それぞれのサーバーにだけ送られます。 GitLab が「insufficient_scope」(The request requires higher privileges than provided by the access token)と答えたときは足す権限の見つけ方へ。401 の「invalid_token」(Token is expired・Token was revoked)ならトークンに何が起きたかへ。429 の「Retry later」や「This endpoint has been requested too many times」なら回数の上限と待つ時間へ。404 の「Project Not Found」なら住所か権限かへ。一覧が 400(「scope does not have a valid value」など)か 404「Group Not Found」ならGitLab が一覧を断った理由へ。changes_count が「1000+」か、変更ファイルが欠けて見えるならGitLab の差分の上限へ。大きな push の後に「変わった」の印が出ないならcompare_timeout と差分の上限へ。マージを断られたら(405・409・422)GitLab が断った理由へ。「This project requires squashing commits when merge requests are accepted.」や「Squashing failed」で失敗したら効いているスカッシュの設定へ。承認を断られたら(401・409)、または承認の取り消しが 404 ならGitLab が承認を断った理由へ。コメント・返信・スレッドの解決・提案の適用を断られたら(400「Note …」・403)GitLab が断った理由へ。マージリクエストの作成が 409「Another open merge request already exists for this source branch」ならGitLab が作らなかった理由へ。リベースが 403「Cannot push to source branch」か、後から「Rebase failed」で失敗したならGitLab がリベースしなかった理由へ。自動マージが 405 になる、すぐマージされるならGitLab が自動マージをどう扱うかへ。

対応する環境

社内で使ってよいか判断するために

このプラグインは GitLab Inc. と提携しておらず、GitLab Inc. の推奨・後援・承認も受けていません。 GITLAB は、米国その他の国と地域における GitLab Inc. の商標です。

お問い合わせ