GitLab with Git Fundamentals - ハンズオンラボ: プロジェクトと Issue を作成する
完了までの推定時間: 30 分
目標
GitLab のプロジェクトは、コードや、設定ファイルなどの補助的なファイルを保存できるリポジトリです。プロジェクトを使って、Issue の追跡、作業の計画、コードの共同作業を行い、組み込みの CI/CD を使って継続的にアプリのビルド、テスト、デプロイを行うこともできます。GitLab のプロジェクトの詳細はドキュメントで確認できます。
GitLab は、プロジェクトを追跡・管理するためのさまざまなツールを提供します。このラボでは、プロジェクトの作成、Issue の作成、プロジェクトレベルでのラベルの作成、そして Issue へのクイックアクションの適用方法を学びます。
タスク A. Training Group にアクセスする
ウェブブラウザで https://gitlabdemo.com/invite に移動します。
Invitation Code フィールドに、講師から提供されたか、LevelUp LMS にある招待コードを入力します。
Provision Training Environment を選択します。
GitLab.com のユーザー名が必要になります。ユーザー名を見つけるには、GitLab に移動します。
左サイドバーで、自分のプロフィール画像を選択します。
表示されたドロップダウンに、
@で始まる値が見えます。これがあなたの GitLab のユーザー名です。招待コードを入力すると、ポータルが GitLab.com のユーザー名の入力を求めます。提供されたフィールドに、(先頭の
@記号を除いた)あなたの GitLab.com のユーザーを入力します。Provision Training Environment を選択します。
ページの下部で My Group を選択します。
あなたの GitLab.com の認証情報でサインインします。
トレーニングのラボの手順を実行するためのサンドボックスを提供する My Test Group グループにリダイレクトされます。
このグループには、すべての機能を見られるように GitLab Ultimate ライセンスがありますが、あなた個人のユーザー名のネームスペースでは、すべての機能にアクセスするには有料サブスクリプションまたは無料トライアルが必要です。
グループにアクセスする際に 404 エラーが表示された場合は、ラボのプロビジョニング中に入力したユーザー名が原因である可能性が高いです。GitLab のユーザー名が正しく入力されているか、再度確認してください。
あなたの My Test Group トレーニングサブグループから、New project ボタンをクリックします。
タスク B. プロジェクトを作成する
Create blank project タイルを選択します。
Project name フィールドに
Top Level Projectと入力します。プロジェクトのスラッグは自動的に入力されます。自分のプロジェクト用に、必要であればこれをより短い文字列に変更できます。このラボではデフォルトのままにします。
Project URL フィールドで、URL の後半部分のドロップダウンをクリックして、それがユーザー名ではなくグループ名を指していることを確認します。このプロジェクトは、ユーザーのネームスペース内に直接ではなく、グループ内に作成すべきです。
Visibility Level の下で、Private が選択されていることを確認します。
あなたのグループの上位にある親グループが private であるため、その下のすべての子グループとプロジェクトは private になります。プロジェクトの可視性レベルの詳細はドキュメントで学べます。
Initialize repository with a README をオンにします。
Create project を選択します。
タスク C. Issue を作成する
Issue は、共同作業、ディスカッション、計画、作業の追跡を可能にする GitLab の中核的な構成要素です。Issue は Project に属し、Group には属しません。グループレベルで Issue を表示すると、そのグループ内のすべてのプロジェクトにまたがって作成されたすべての Issue を見られます。詳しくはこちらで読めます。
左側のナビゲーションペインで、Plan > Issues に移動します。
New issue ボタンをクリックします。
Title フィールドに
My first issueと入力します。Type ドロップダウンで、
Issueが選択されていることを確認します。説明は任意のセクションですが、この Issue に自分の説明を自由に入力してかまいません。
説明セクションには、テンプレートを選択するためのドロップダウンがあります。Issue の説明を標準化するのに役立つテンプレートを作成できます。Issue テンプレートの詳細はこちらをクリックして学べます。
Assignees ドロップダウンを使って、ドロップダウンをクリックしてから自分のユーザー名をクリックすることで、Issue を自分自身に割り当てます。
あるいは、Assignees ドロップダウンのすぐ隣にある Assign to me をクリックして、Issue を自分自身に割り当てることもできます。
今のところオプションはそのままにしますが、それらが何をするかを理解することは重要です。
Epic: Issue をエピックに関連付けます。エピックは、1 つ以上の子 Issue の親となるグループ化です。エピックをイニシアチブやメタレベルのトピックと考え、Issue をそのイニシアチブの目標または詳細なタスクと考えるとよいでしょう。
Milestone: GitLab のマイルストーンは、通常はリリースおよび/またはバージョン番号に関連付けられる、一定期間内のより広い目標を達成するために作成された Issue やマージリクエストを追跡する方法です。
Labels: Issue にラベルを適用します。ラベルは、Issue の並べ替えやフィルタリングに使えるメタデータのタグです。
Weight: Issue にウェイトの値を適用して、その Issue が持つ、あるいは要する時間、複雑さ、価値を測定します。
Due date: Issue で締め切りを把握し、機能が期限どおりに出荷されるようにするために使います。Issue の期日が近づいているのにまだクローズされていない場合、メールのリマインダーを受け取ります。
Iteration: Issue をイテレーションに関連付けて、一定期間にわたって追跡します。これにより、チームはベロシティとボラティリティのメトリクスを追跡できます。
Create issue ボタンをクリックします。
タスク D. カスタムラベルを作成する
ラベルを使うと、作業を整理してタグ付けできます。ラベルを使うことで、動的なフィルタリングのような機能を使って、関心のある Issue を追跡しやすくなります。ラベルの使用例には、色と、bug、feature request、docs のような説明的なタイトルを使ってエピック、Issue、マージリクエストを分類することなどがあります。ラベルの詳細はドキュメントで読めます。
左側のナビゲーションペインで、Manage > Labels に移動します。
New label ボタンをクリックします。
Title フィールドに
Openedと入力します。Description フィールドは、ラベルを説明するために使う任意のフィールドです。このフィールドには何を入力してもよく、空白のままにしてもかまいません。
任意の背景色を選択します。
Create label ボタンをクリックします。
プロジェクトでラベルを作成すると、そのラベルはプロジェクトレベルで作成されます。これは、そのラベルが他のどのプロジェクトでも利用できないことを意味します。グループ内のすべてのプロジェクトで利用できるグループレベルのラベルを作成することも可能です。
直前の 3 つのステップを使って、
CompletedとNeeds documentationというタイトルの追加のラベルを 2 つ作成します。これらのラベルには、好きな背景色を付けてかまいません。これで、プロジェクト内の任意の Issue、マージリクエスト、エピックに割り当てられるラベルが 3 つ用意できました。
タスク E. Issue にラベルを割り当てる
Plan > Issues に移動します。
My first issueのタイトルをクリックして Issue を開きます。My first issue の右サイドバーで、Labels > Edit をクリックします。
先ほど作成した Opened と Needs documentation のラベルをクリックします。
Labels セクションから離れた場所をクリックします。Issue に両方のラベルが適用されたことに注目します。
マルチセレクトボックスを閉じるためにラベルセクションから離れた場所をクリックするまで、ラベルは Issue に適用されません。
タスク F. クイックアクションを使う
クイックアクションは、通常は GitLab のユーザーインターフェースでボタンやドロップダウンを選択して行う一般的なアクションの、テキストベースのショートカットです。これらのコマンドは、Issue、エピック、マージリクエスト、コミットの説明やコメントに入力できます。
クイックアクションの詳細と、利用可能なクイックアクションの完全な一覧については、ドキュメントを参照してください。
前のタスクの Issue のコメントフィールドに、クイックアクション
/spend 1 hourを入力します。Comment ボタンをクリックします。
右側の情報ペインで、Time tracking が
Spent: 1hを表示するようになったことに注目します。テキストコメントを残す代わりに、クイックアクションが Issue にかけた作業時間を更新しました。
ラボガイド完了
このラボの演習を完了しました。このコースの他のラボガイドを見ることができます。
c955a93f)