マージリクエストのレビューとプラグイン機能を備えたGitLab 11.4がリリースされました

注目を集める絵







GitLab 11.4の新しいリリースに、チームの効率的な作業を支援するために待望のアップデートが用意されていることを嬉しく思います。 DevOpsを使用するほとんどのチームは、配信サイクルを短縮する傾向があります。 したがって、開発者は、製品の提供を加速し、ビジネスパフォーマンスを向上させるため、作業量と時間のロスを削減する改善に常に満足しています。







GitLab 11.4では、 マージリクエスト変更のためのファイルツリー により 、コードレビューをより効率的にしていますプラグイン機能(機能フラグ、機能切り替え)のアルファ版も提供しています 。 Auto DevOpsおよびCIは、 PostgreSQLデータベースの移行および増分スケジュールされた展開と連携してより適切に機能しますGit v2プロトコルのサポートにより、 Gitでも高速になりました。







コードレビュー



マージリクエストのレビューは、コードとマージリクエストによってコメントを整理するのに役立ちます。 バッチコメントを使用すると、レビュー担当者はコードまたはマージリクエストでコメントを記述し、それらを1つのパッケージで発行して送信できるようになり、プロジェクトの変更の追跡が容易になりました。







高品質のコードを提供するための重要なステップは、コードの変更のレビューと確認を担当する人々の正しい選択です。 リリース11.3で導入されたコードの所有者( 元の記事翻訳 )に基づいて、GitLabは、 CODEOWNERS



ファイルでマージ要求のレビューアおよび確認者として示されている人を提供するようになりました。 したがって、変更のレビューと確認はより迅速かつ効率的に実行されます。 また、コードの特定の部分に特定のレビュー担当者が必要な場合など、チームの役割と責任を分離するのにも役立ちます。







マージ要求の変更をファイルツリーの形式で提示すると、レビュー担当者が変更されたファイルのセットを表示してフィードバックを送信しやすくなります。







Chorus.aiの創設者でありCTOの1人であるRussell Levyは、マージリクエストのレビューとファイルツリービューがチームにどのように役立つかを説明しました。







私たちは非常に慎重にコードレビューを実施し、通常、平均的なマージリクエストについて10〜20のコメントを書きます。それらのいくつかについては、議論のいくつかの反復が発生します。 マージリクエストレビューは、コードレビュープロセス中の混乱としゃっくりを減らします。



大規模なマージリクエストの場合、ファイルツリーの形式での変更の新しい表現により、レビューが大幅に促進および高速化され、コードを簡単にナビゲートして依存関係を理解できるようになります。


プラグ可能な機能



機能切り替えシステムのプラグイン機能のアルファ版を紹介します 。 チームは継続的な配信を実践できるようになり、小規模なバッチで新しい機能を本番に追加して、完全な展開のリスクを軽減できます。







Auto DevOpsおよびCI / CDの改善



スタータープランからコアプランへの .gitlab-ci.yml



を使用 .gitlab-ci.yml



.gitlab-ci.yml



機能を引き出し、すべてのユーザーがアクセスできるようにします。 すべてのチームがこれらのベストプラクティスを活用して、CI / CDパイプラインをより効率的に管理できるようになりました。







その他の改善



このリリースの巨大なGitLabコミュニティとともに、新しいプロファイルページビュー、ステータスへのクイックアクセス、 @



によるメンションの強調表示、新しいクイックアクション、エピックを閉じる機能など、多くの驚くべき改善を追加しました。







GitLab 11.4のすべての新機能について説明します。







ミーティングウェブキャストリリース11.4にご 招待します







GitLab MVPバッジ







今月のMVP- ルークピッチャウ



Lukeは、 2要素認証の回復コードを含むファイルダウンロードする機能を追加しました。これにより、バックアップが簡素化されます。 これらのコードは、電話またはワンタイムシークレットパスワードにアクセスできなくなった場合にGitLabアカウントを入力するために必要になります。







この貢献をありがとう、ルーク!







GitLab 11.4のリリースの主な機能



マージリクエストのレビュー



(プレミアム、アルティメイト、シルバー、ゴールド)







マージリクエストコードのレビューは、GitLabの強力な機能です。 チームメンバーは、diffの特定のコード行に関連付けられたディスカッションをリードし、それらを解決することさえできます。 ただし、大きな差分を持つマージ要求では、このプロセスが難しくなる可能性があります。 多くの場合、レビューアは1つのディスカッションに10個以上のコメントを残す必要があり、9番目または10番目のコメントは以前のコメントを不要にする場合があります。 その結果、マージリクエストの作成者は多くの通知を受け取り、全員に対処する必要があります。







このリリースでは、Merge Request Reviewを提示します。 これにより、レビュアーはドラフトに必要なだけコメントを記述し、それらがすべて必要であることを確認してから、1ステップで送信できます。 下書きはGitLabに保存されるため、レビュー担当者は作業をいくつかのセッションに分割できます。たとえば、職場でデスクトップでレビューを開始し、夜に自宅でタブレットで終了します。 これらのドラフトコメントが送信されると、通常の個々のコメントとして表示されます。 これにより、個々のチームメンバーは、自分たちにとって都合の良い方法でコードレビューを実施できますが、それでもチーム全体と一緒になります。







将来のリリースでは、この機能を改善し、コメントのパッケージを送信する前にプレビューを表示する機会を提供するとともに、これらのコメントに関する通知1つの通知にグループ化します。







リクエストのレビューを統合







ディスカッションドキュメントオリジナルチケット







アプリケーションでのプラグイン機能の作成と使用(アルファ版)



(プレミアム、アルティメイト、シルバー、ゴールド)







この機能により、ソフトウェアのプラグイン機能を作成し、製品で直接管理できます。 新しいプラグイン機能を作成し、簡単なAPI命令を使用してソフトウェアで確認するだけで、GitLab自体のプラグイン機能を使用して、フィールドで製品の動作を制御できます。







プラグイン機能は、アプリケーションに機能切り替えシステムを提供します。 これにより、チームは継続的デリバリー(CD)を達成し、制御されたテストのために新機能を本番環境に送り、顧客向けのリリースと送信機能を共有できます。







現時点では、このシステムはアルファ版で提供されています。 この仕組みを確認してフィードバックを残すことをお勧めしますが、将来のリリースで実装が変更される可能性があることを忘れないでください。







アプリケーションの機能フラグを作成して切り替ええます(アルフア)







プラグイン機能元のチケットの ドキュメント







マージ要求の変更を表示するためのファイルツリー



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







コードレビューはプロジェクトを成功させるために必要なプラクティスですが、変更のリストから何が変わったのかを理解することは困難です。 このタスクを容易にするために、GitLabは現在、検索可能な変更のファイルツリーを提供しています。







ファイルツリーは、変更の構造とサイズを表示します。これはすでにdiff-stats



で機能し、変更の一般的な概要を提供し、差分間のナビゲーションを改善します。 ツリー検索を使用すると、レビュー担当者はパスまたはファイルの種類ごとにファイルの一部に限定できるため、マージリクエストの部分のみに集中したい専門家によるレビューを簡素化できます。







以前は、変更されたファイルのリストは、特定のファイルへの移動に最適な検索付きのドロップダウンリストから利用できました。







マージ要の差分を参照するためのファイルツリー







マージ要求と、差分および元のチケットの ナビゲーションに関するドキュメント







コード所有者は、マージ要求の確認として提供されます



(スターター、プレミアム、アルティメイト、ブロンズ、シルバー、ゴールド)







誰があなたの変更をレビューするのに最適な候補者になるかは必ずしも明らかではありません。 マージリクエストを作成または編集するときに、適切なユーザーをこのロールに簡単に割り当てることができるように、コード所有者が確認として提供されるようになりました。







コード所有者のサポートは、GitLab 11.3リリースに登場しました( 元の記事翻訳 )。 将来のリリースでは、所有者の確認および必要な確認 として自動的に指定されるマージ要求の作業プロセスへのコード所有者の参加の度合いが増加します。







コード所有者をマージ承認者として提案する







マージリクエストの確認オリジナルチケット に関するドキュメント







更新されたプロファイルページビュー



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







GitLabをどの役割で使用するかは重要ではありません。アクティビティは重要な情報源であり、プロフィールページに表示される関与の指標です。 あなたのプロファイルは、あなたが何に興味を持ち、何に取り組んでいるかを簡単に理解できるものでなければなりません。







このリリースでは、ユーザープロファイルページを更新し、既に知っている開発への貢献のタイムラインを短縮しました。GitLabの最新のアクティビティと最も重要な個人プロジェクトが表示されるようになりました。







新しいユーザープロファイルページの概要







ユーザープロファイルのドキュメント元のチケット







ユーザーメニューでステータスを表示および変更する



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







GitLab 11.2のリリース( 元の記事翻訳 )では、まずユーザーのステータスを紹介し、現在のワークロード、気分、または少なくともお気に入りの動物を共有する機会を提供しました。







このリリースでは、ステータスの変更を簡素化します。 ユーザーメニューの新しい「ステータスの設定」項目を使用すると、コンテキストを離れることなくステータスを設定またはクリアできます。 また、現在のステータスとメッセージと絵文字が上部に、名前とニックネームとともに表示されます。







ユーザーメニュー内でステータスメッセージを設定して表示する







ステータス文書元のチケット







インクルードを使用して.gitlab-ci.yml



追加ファイルを接続することが、コアプランで利用可能になりました



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







このリリースから、 .gitlab-ci.yml



でのinclude



の使用がスタータープランからコアプランに移動したことを.gitlab-ci.yml



。 したがって、テンプレートおよびその他の共有リソースは、無料および有料のユーザーがいつでも利用でき、誰もがこの高度な開発技術をCI / CDパイプライン用の再利用可能なスニペットとともに使用できます。







`.gitlab-ci.yml`のインクルドを使用する機能をStarterからCoreに移動します







ドキュメント元のチケットを 含めます







ファイルパスまたはファイルへの変更のジョブをexcept



/ only



開始



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







特定のファイルまたは指定されたパスで変更が発生した場合に、 .gitlab-ci.yml



で/ .gitlab-ci.yml



except



ルールonly



を使用して作業できる機能







これにより、新しい変更に必要な手順のみが実行され、パイプライン全体の作業が加速されるため、さまざまなリソースとアセンブリを含むリポジトリをより詳細に制御できます。







パスまたはファイルを変更するために、 `only` /` except`のジョブを実行します







変更および元のチケット の制限の使用に関するドキュメント







Auto DevOpsに追加されたスケジュールされた増分展開



(プレミアム、アルティメイト、シルバー、ゴールド)







Auto DevOpsで増分展開を実行する機能はしばらくの間利用可能でしたが、このリリースでは、エラーがなければ指定されたスケジュールに従って自動的に実行されるように、スケジュールで展開を実行する機能を追加しています。







Auto DevOpsに時限増分ロールアウトを追加する







スケジュールされた増分展開のドキュメント元のチケット







GitLabアプリケーションのKubernetes RBACサポート



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







インフラストラクチャを初めてセットアップするとき、または既存のインフラストラクチャに接続するとき、安全性が第一の考慮事項です。 ロールベースのアクセス制御(RBAC)はKubernetes 1.8リリースで公開(GA)になり、Kubernetesリソースのアクセス制御をよりきめ細かく制御できるようになりました。







Kubernetesとの統合により、RBACが接続されたGKE(Google Kubernetes Engine)でクラスターを作成するか、RBACを使用して既存のクラスターに接続してインフラストラクチャを安全にすることができるようになりました。







GitLab管理アプリのKubernetes RBACをサポート







RBAC元のチケットを含む クラスタドキュメント







Auto DevOpsでのRBACサポート



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







Auto DevOpsは、RBACが有効になっているKubernetesクラスターでのアプリケーション展開もサポートするようになりました。







役割ベースのアクセス制御は、Kubernetesクラスターの信頼性、セキュリティ、および効率性を確保するための重要なツールです(展開の責任者)。 Auto DevOpsをRBACに接続されたクラスターと組み合わせて使用​​すると、インフラストラクチャのセキュリティが向上し、アプリケーションにメリットがもたらされます。







RBACの自動DevOpsサポート







自動DevOpsドキュメント元のチケット







Auto DevOpsのPostgreSQLデータベースの移行と初期化のサポート



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







Auto DevOpsの機能を改善して、アプリケーションを自動的に検出、構築、テスト、展開、監視します。 リリース11.4以降、Auto DevOpsは、PostgreSQLデータベースをプロジェクトに初期化または移行する機能を提供します。







プロジェクト変数を設定してPostgreSQLデータベースを初期化または移行するだけで、あとはAuto DevOpsが行います。







Auto DevOpsのPostgreSQL DBの移行と初期化をサポート







自動展開および元のチケットの ドキュメント







GitLab 11.4のその他の改善点



フォローしているタグのリスト



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







GitLabのラベルは、タスク、マージリクエスト、エピックに適用できるため、非常に用途が広いです。 ただし、使用するタグが多いほど、それらを適切に保持することが難しくなります。







過去のリリースでは、プロジェクトタグリストページにタグ検索を追加しました。 このリリースから、タグを検索し、名前、作成日、変更日でソートし、通知が通知されるタグのリストを表示できます。 これらはすべて、グループタグとプロジェクトに関連付けられたタグのリストで利用できます。







購読済みラベルのリスト







タグ元のチケットの ドキュメントを検索します







WIPマージリクエストフィルタリング



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







マージリクエストはGitLabの主要部分の1つです。 プロジェクトの参加者は、透明性を維持しながらコードで共同作業できます。 チームは、作業を早い段階で共有し、WIP機能(「作業中」、「開発中」)を使用する必要があります。これは、マージリクエストがまだ活発に処理されており、制御するには早すぎることを示しています。







このリリースでは、グループレベルとプロジェクトレベルの両方で機能するマージリクエストリスト用の新しいフィルターを追加しました。これにより、ユーザーはWIPリクエストと非WIPリクエストを区別しやすくなります(「at work」と「ready」)。 これにより、ユーザーは、マージチェックの最終段階に近いものとは対照的に、まだ作業の初期段階にあるマージ要求に集中できます。







WIPマージリクエストによるフィルター







WIPフィルターのドキュメント元のチケット







個人的な参照を強調する



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







多数の参加者とのタスクまたはマージ要求の議論では、どのコメントがあなたに宛てられているかを確認することは困難です。







このリリース以降@



現在のユーザーの@



へのすべての参照が別の色で強調表示されるため、送信されたコメントをすぐに確認して、すぐにそれらに集中できます。







自分の「@メンション」を明確に強調する







参照および元のチケットの ドキュメント







クリックしてMarkdownにGFMテーブルとリンクを挿入する



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







GitLabは、ほとんどのテキスト入力フィールドでGitLab Flavored Markdown(GFM)をサポートし、シンプルな構文でフォーマット機能を拡張します。 特に、GFMでテーブルを作成できます。 以前は、多くの文字を入力するか、前のテーブルを挿入して好きなようにフォーマットする必要があったため、この機能は特に大きなテーブルで作業する場合は使用が困難でした。 GFMはリンクもサポートしています。 ただし、この場合に使用する構文を覚えるのが難しい場合があります。







このリリースから、GFMエディターで表の画像のボタンをクリックするだけで、表が自動的に挿入されます。 その後、テーブルセルの値を簡単に入力したり、必要に応じてカスタマイズしたり、拡張したりできます。 この機能は、GitLab全体の説明とコメントで使用できます。







同様に、[リンクの挿入]ボタンをクリックすると、リンクアドレスとその名前をすばやく挿入できるURLのテンプレートが表示されます。







挿入テーブルを開発してくれたGeorge Tsiolisに感謝します!







URL挿入を開発してくれたJan Beckmannに感謝します!







クリックしてマークダウン表とリンクを挿入します







GFMドキュメントオリジナルチケット







作業スケジュールに新しいタスクを含める



(スターター、プレミアム、アルティメイト、ブロンズ、シルバー、ゴールド)







バーンダウンチャートは、チームがマイルストーンで進捗を追跡するのに役立ちます。 通常、作業量はマイルストーンが始まる前に議論され承認されます。 ただし、このルールには重要な例外(予期しないバグやセキュリティ問題の解決策など)が含まれている場合があり、新しいタスクの新しいチケットを作成する必要があります。







このリリースから、作業スケジュールにはマイルストーンの途中で作成された新しいタスクに関する情報が表示されるため、スケジュールが急上昇します。







バーンダウンチャートで作成された新しい問題を含める







タスクAPIの重み値の拡張範囲



(スターター、プレミアム、アルティメイト、ブロンズ、シルバー、ゴールド)







前のリリースから、タスクの重みの値はゼロから無限に変化する可能性があります(合理的な制限内)。







このリリースでは、タスクAPIを使用してより広い範囲でウェイトを設定する機能を追加しました。







APIタスクのドキュメント元のチケット







ディスカッションをすばやくブロックする



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







タスクとマージリクエストのディスカッションをブロックすると、注意を古いタスクとマージリクエストからより関連性の高いタスクに移すのに役立ちます。 この機能を使用して、攻撃的または非生産的な動作を抑制することもできます。







このリリースでは、ディスカッションをロックおよびロック解除するクイックアクションが追加されたため、コメントの投稿とともにディスカッションをロック/ロック解除できます。







この機能を提供してくれたMehdi Lahmamに感謝します!







ディスカッションのクイックアクションをロックする







クイックアクションドキュメントオリジナルチケット







壮大な閉鎖



(究極、ゴールド)







このリリースでは、GitLabのエピックを閉じる(および再発見する)だけでなく、タスクとマージリクエストの機能を追加します。 エピックのリストには、タスク用に実装されている方法と同様に、オープン(オープン)、クローズ(解決済み)、およびすべて(すべて)のタブがあります。 したがって、エピックのすべての作業を完了した場合、または関連性がなくなった場合は、それをクローズ(クローズ)としてマークでき、デフォルトリストに表示されなくなります。







適切なボタンを使用するか、クイックアクションを介して、またはタスクとしてAPIを介して、エピックを閉じて再度開くことができるようになりました。







叙事詩を閉じる







叙事詩オリジナルチケット に関するドキュメント







管理設定パネルの改善



(コア、スターター、プレミアム、アルティメット)







GitLabが提供する多くの機能のため、GitLabの管理は非常に困難な場合があります。







このリリースでは、管理設定パネルの使用がより便利になりました。 現在、個々の設定のすべてのサブセクションは個別のページにあり、管理者は変更が必要な設定にすばやくアクセスできます。







管理領域の設定構造を改善する







管理設定パネル元のチケット に関するドキュメント







人気順にプロジェクトを並べ替える



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







私たちの開発チームは、GitLabインスタンスで関連性のある興味深いプロジェクトを簡単に検索できるように、可能な限りのことをすべて行っています。 “Most stars” ( ), .







Jacopo Beschi !







Explore projects by popularity







.









(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







, , .







GitLab 11.4 . .







Johann Hubert Sonntagbauer !







Display code language percentage on project overview







.









(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







-. , GitLab, . , , , .







“Download codes” ( ).







Luke Picciau !







Download two-factor recovery codes







.







Runners



(CORE, STARTER, PREMIUM, ULTIMATE)







Runners , Runners .







Filter admin Runners view by Runner type and state







Runners .







Docker -



(CORE, STARTER, PREMIUM, ULTIMATE)







- Docker. Docker , , , .







Add support for interactive web terminal to Docker executor







インタラクティブなWebターミナルのドキュメントオリジナルチケット







Auto DevOps



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







11.4 Auto DevOps ( GitLab.com) ( -) , , , . Auto DevOps , .







, , .







Auto DevOps .









(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







'when' gitlab-ci.yml



. , , , — , , .







Allow pipelines to schedule delayed jobs







.







Nurtch JupyterHub



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







(runbooks) , .







JupyterHub, , GitLab Kubernetes Nurtch Rubix , DevOps. , .







Interactive runbooks with Nurtch and JupyterHub







.









(ULTIMATE, GOLD)







, . -, . Maintainers , , .







GitLab 11.4 . Maintainers Settings > CI/CD > License Management , .







Add manual entries for License Management







.









(ULTIMATE, GOLD)







GitLab 11.4, . , , .







Alert thresholds now displayed on metrics dashboard







.







Git v2



(コア、スターター、プレミアム、アルティメット、フリー、ブロンズ、シルバー、ゴールド)







( git fetch



) , , . Git v2 , ( ) (GitLab) , . .







- . , ( git fetch origin master



) . , 100000 .







Git v2 Git v2.18.0, . , git config --global protocol.version 2



. GitLab.com Git v2 SSH. , .







Git v2 .







UX Geo



(PREMIUM, ULTIMATE)







Geo .

GitLab 11.4 UX Geo , . “Open projects” ( ) , . “All” .







UX !







Geo UX improvements in Admin Area







UX Geo .







Prometheus 2.0 Omnibus GitLab



(CORE, STARTER, PREMIUM, ULTIMATE)







Omnibus Gitlab Prometheus, . Prometheus 2.x, , . , , 1.x.







GitLab 11.4, Prometheus 2.4.2 Omnibus, .









Prometheus 2.4.2, .







.










詳細なリリースノートとアップデート/インストール手順は、元の英語の投稿で見つけることができます:GitLab 11.4はMerge Request ReviewsとFeature Flagsと共にリリースされました







Cattidourdenrishavant、@ maryartkey は英語から翻訳に取り組みました








All Articles