GitLab with Git Essentials - ハンズオンラボ: GitLabを使用してコードをマージする
完了までの見積時間: 40分
目的
このラボでは、GitLabを使用してプロジェクト、課題、およびマージリクエストを作成します。また、組み込みのGitLab Web IDEを使用してファイルを編集し、マージリクエストを確認します。GitLabは、Git単体よりもリポジトリを管理するための包括的なUIを提供しています。GitLabには、Git言語自体がサポートしていないインラインコメントなど、さまざまな機能も含まれています。マージリクエストのインラインコメントについては、GitLabの機能ページで詳細を確認できます。
タスクA. 新しいプロジェクトを作成する
-
ページの上部のパンくずリストで My Test Group をクリックして、My Test Group に移動します。
-
GitLabの My Test Group から、New project ボタンをクリックします。
-
Create blank project タイルをクリックします。
-
プロジェクト名を
Second Project
とします。 -
プロジェクトの可視性が Private に設定されていることを確認します。
-
Initialize repository with a README チェックボックスをオンにします。
-
Enable Static Application Security Testing (SAST) はチェックしないでください。
-
Create project ボタンをクリックし、GitLabが新しいプロジェクトのメインページにリダイレクトするのを待ちます。
タスクB. 新しい課題を作成する
-
左側のナビゲーションペインで Plan > Issues をクリックします。
-
New issue ボタンをクリックします。
-
Title フィールドに
new issue
と入力します。 -
Assignees ドロップダウンの横にある Assign to me をクリックします。
-
Create issue ボタンをクリックします。
タスクC. マージリクエストを作成する
マージリクエストは、リポジトリ内のドキュメントを更新する提案を行うためのGitLabの中核機能です。マージリクエストについては、ドキュメントで詳細を確認できます。
-
課題の詳細ページで、Create merge request ボタンの右側の dropdown arrow をクリックします。ここでマージリクエストをカスタマイズできます。
-
ブランチ名を
fix-issue
に設定します。ソースがmain
に設定されていることを確認してください。ソースの値は、マージリクエストの変更が適用される場所を定義します。この例では、
main
ブランチに適用される変更を行っています。 -
マージリクエストを作成ボタンをクリックします。
-
マージリクエストを作成をクリックした後、新しいマージリクエストページにリダイレクトされます。
-
マージリクエストのタイトルが
Draft: Resolve "new issue"
に設定されていることに注意してください。マージリクエストのタイトルはデフォルトで
Draft: Resolve "<Issue Name>"
の形式になります。 -
タイトルの下に、ドラフトとしてマークと記載されたチェックボックスがあります。現在、このチェックボックスがチェックされていることに注意してください。
マージリクエストが作成されると、デフォルトでドラフトとしてマークされます。マージリクエストのタイトルにある
Draft
キーワードは、そのマージが現在ドラフトであることを示します。ドラフトのマージは、準備が整うまでマージできません。これにより、誤ったマージを防ぐのに役立ちます。 -
マージリクエストの説明には、Closes #1というテキストがあることに注意してください。この説明により、マージリクエストをマージすると、それに関連付けられた問題も自動的にクローズされます。
説明には、
#
文字の横に異なる番号が表示される場合があります。この番号は、マージリクエストが開かれた問題の番号と一致します。 -
マージリクエストのすべてのフィールドをデフォルト値のままにしておきます。
-
このラボでは、すべてのメタデータ値をデフォルト値のままにしますが、それらが意味することを理解することは重要です:
-
担当者: 担当者は、マージリクエストでの変更の作成/維持を担当する人々です。
-
レビュアー: レビュアーは、マージリクエストでの変更のレビューおよび承認を担当する人々です。
-
マイルストーン: GitLabのマイルストーンは、通常、リリースやバージョン番号に関連する一定期間内に達成するために作成された問題やマージリクエストを追跡する方法です。
-
ラベル: マージリクエストにラベルを適用します。これらは、リクエストを整理およびフィルタリングするために使用できるメタデータタグです。
-
-
マージリクエストの依存関係: コミットの衝突を防ぐために、マージリクエストが正しい順序でマージされることを確認します。
-
マージリクエストが承認されたときにソースブランチを削除: このオプションが選択されている場合、マージ元のブランチが削除され、選択されていない場合は保持されます。
-
マージリクエストが承認されたときにコミットをスカッシュ: このオプションが選択されている場合、このブランチからは1つのコミットのみが表示され、そのコミットにはすべてのコミットで行われた変更が含まれます。それ以外の場合、このブランチからのすべてのコミットが履歴に追加されます。
- 画面下部の マージリクエストを作成 ボタンをクリックします。
マージリクエストを作成した後、1つの作業に関連する3つのリンクされたアイテムがあります: 作業内容を説明する課題、課題に対処する変更を含むブランチ、変更をmain
コードブランチに組み込む方法を提案するマージリクエストです。
タスク D. GitLabのWeb IDEを使用してブランチ上のファイルを編集
課題で必要とされる変更に対処するために、コードブランチ内のファイルを編集できます。ブランチ内のファイルを編集する方法はいくつかあります。前回のラボでは、ローカルでファイルを編集する方法を学びました。このラボでは、Web IDEを使用してオンラインでファイルを編集します。Web IDEはコミットステージングを備えた高度なエディタです。Web IDEを使用して、GitLab UIから直接複数のファイルを変更できます。詳細については、ドキュメントを参照してください。
-
マージリクエストページの右上にある Code の右側の矢印をクリックし、Web IDEで開く をクリックします。
-
左側のファイルエクスプローラーで
README.md
をクリックします。 -
ファイルの3行目に
Edit my README.md file
と入力します。 -
IDEの左ペインで、ソースコントロール ボタンをクリックします(ミニ Git ブランチンググラフのように見えます)。
-
コミットメッセージ に
Updated the README.md file
と入力します。 -
コミット ボタンをクリックします。
-
画面右下隅に
Success! Your changes have been committed
と表示される通知ボックスが表示されます。画面右下隅の通知ボックスから プロジェクトに移動 オプションをクリックします。If this dialog box disappears, you can get back to the project by clicking the GitLab icon on the bottom left of the screen. When you click this button a dialog will appear in the middle of the screen with various options. Click
Go to Second Project project on GitLab
. -
プロジェクトのランディングページから、Code > マージリクエスト をクリックします。マージリクエストの名前をクリックします。
タスク E. マージリクエストでの変更の確認
-
マージリクエストページで、右上隅にある担当者セクションを見つけます(画面の右上にある二重矢印をクリックしてパネルを展開する必要があるかもしれません)。マージリクエストが自分自身に割り当てられていることを確認します。割り当てられていない場合は、担当者 > 編集 をクリックし、リストからユーザー名をクリックします。変更を適用するには、リストの外をクリックします。
-
マージリクエストタイトルの直下にある変更タブをクリックします。
-
コミットの変更内容が含まれるテーブルの左側の3行目にカーソルを合わせ、コメントアイコンをクリックします。
-
コメント欄に
これはコメントです
と入力し、レビューを開始をクリックします。レビューを開始すると、コメントは提出するまであなただけに表示されます。
-
通常は、すべてを一度に提出する前にレビューにさらにコメントを追加しますが、このラボではレビューを終了ボタンをクリックします。
-
表示されるダイアログで、概要コメントテキストボックスが表示されます。このオプションのフィールドにレビューの要約を追加できます。このレビューでは、コメント README.md にコメントを追加 を追加します。
-
概要コメントの下には、3つのラジオボタンがあります。レビューに一般的なフィードバックのみが含まれているため、コメントをクリックします。
-
コメント: レビューに一般的なフィードバックが含まれていることを示します。このオプションはマージリクエストを承認しません。
-
承認: 多くのプロジェクトでは、マージリクエストをマージする前にレビューアーに承認を求める必要があります。このオプションはフィードバックを提出し、マージリクエストを承認します。
-
変更を要求: マージリクエストをマージする前に対処すべきフィードバックが含まれていることを示します。
-
-
レビューを送信ボタンをクリックします。
-
誰かがあなたのコメントを見て、それに対処するために別のコミットを追加したと仮定します。コメントが処理されたことを示すために、スレッドを解決ボタンをクリックします。
タスク F. ブランチをマージしてマージリクエストを閉じる
-
MR タイトルの下にある概要タブをクリックします。
-
マージリクエストをマージ可能にするために、準備完了をクリックします。これにより、MR のタイトルから
Draft:
が削除されます。このラボでは、このプロジェクトに対して承認者を指定していません。もし指定していた場合、承認ボタンが適格な承認者を表示セクションに表示されます。
-
ソースブランチを削除のチェックボックスが有効になっていることを確認し、マージボタンをクリックします。
-
プロジェクトのリポジトリに戻るために、左側のナビゲーションペインでCode > Repositoryをクリックします。
-
ページの左上にあるドロップダウンを見て、どのブランチにいるかを確認します。ブランチ名をクリックして
main
ブランチに切り替えます。 -
リポジトリのデフォルトビューは
README.md
ファイルの内容を表示するため、マージがREADME.md
の内容にEdit my README.md file
を追加したことを簡単に確認できます。
ラボガイド完了
このラボ演習を完了しました。このコースの他のラボガイドを表示できます。
提案はありますか?
ラボに変更を提案したい場合は、マージリクエストを介して提出してください。