はじめに
個人的にちょっとアプリ開発してみると心に決め、プロジェクトの管理は GitLab を使うことにしました。
ちょっとしたアプリとは言え軽くタスク管理したいなーと思いつつ、ツールやサービスをあれこれ横断したくなかったので GitLab の Issue を使ってみました。
で、使ってみて分かったことを自分のメモとして書き起こしてみました。
細かいことは 公式ヘルプ(英語) を参照。
今後もメンテナンスしていけたら良いな。
出来ること / 出来ないこと
無償プランでの話し。
最低限のことはできるけど、痒い所に手が届かない感じ。
出来ること
- プロジェクトを横断した課題やタスクのリスト表示 (
Group
単位) -
カンバン
による運用 - 優先度の設定
- 一覧のフィルタリング
- ラベルによるグルーピング
- 期日の管理
- マイルストーンの設定 (マイルストーンは開始~終了を設定可能)
出来ないこと
- リスト内の自由な並べ替え (項目指定による昇順/降順はできる)
- ガントチャート表示
- フィルタ設定の保存と共有(イメージは Redmine のクエリ機能)
Gitlabとしてのアピールポイントは以下のリンクを参照。
DevOps ツールの俯瞰図
私の場合、ガントチャートがあると目標に向かって突き進む感が出てモチベーションが維持しやすいので欲しかったのですが、ないものは仕方ない、、、
事前準備
- プロジェクトの作成
-
課題管理するプロジェクトがない場合は最初にプロジェクトを作成する。
調べれば色々出てくると思うのでプロジェクト作成手順は割愛。
必要に応じてGroup
も作ろう。 - メンバー / グループの作成 (or 招待)
-
多くの場合 issue は複数人で運用することになると思うので追加しておこう。
こちらも調べるとすぐ出てくると思うので手順は割愛。
各ページについて自分なりの理解
Issues
は階層構造になっていて、配下に以下のページが存在する。
*プランや連携しているサービスによって違いはあるかも知れない
- List
-
登録した Issue を一覧表示する画面 (
Issues
をクリックするとトップ画面として表示)
一覧には詳細説明以外の殆どの項目が表示される。- Confidential マーク
- Title
- タスク数 (完了数 / 総数)
- 状態 (Open / Close)
- 作成日時
- マイルストーン
- 期日
- ラベル
- 見積もり時間
- 担当 (アイコン)
- コメント数
- 最終更新日時
Open / Close / All
にページが分かれていて、最初Open
のページが表示される。 - Boards
-
いわゆる
カンバン
。
List
ほどじゃないけど、それなりの項目が表示される。
標準では Open と Close のリストが準備されている。 (変更可能)
後述のLabels
で作成したラベルをリストとして追加可能。
表示するリストのパターンは保存可能。 (厳密には新たなカンバン
を作成して編集する) - Labels
-
付加情報の一つであるラベルを管理するための画面。
ラベル名、詳細説明、色を設定可能。 - Service Desk
-
未使用・未調査につき詳細不明。
今回利用予定がないので、必要な人は調べて頂けると、、、 - Milestone
-
付加情報の一つであるマイルストーンを管理するための画面。
マイルストーン名、詳細説明、開始日、終了日を設定可能。
詳細画面はIssue / MR / メンバ / Label
にページが分かれ、関連する情報が一覧で参照できる。
有償プランだとバーンダウンチャートを表示できるらしい。
使い方
Issue 作成
List
画面から作成する方法と Boards
画面から作成する方法がある。
-
List
画面から作成 -
-
New issue
をクリック - 必要事項を入力
-
Submit issue
をクリック
-
-
Boards
画面から作成 -
-
Open
または追加したリスト横の+
をクリックする。 - タイトルを入力
-
Submit issue
をクリック
Incident
は作成できない。 -
List
から作成する際の入力項目
- Title
- これさえ入力すれば作成可能。
- Type
-
用途に合わせて以下から選択する。
- Issue
-
Milestone
を設定可能で、Severity
の設定ができない。 - Incident
-
Severity
を設定可能で、Milestone
の設定ができない。 (ちゃっかりBoards
画面でマイルストーン設定できたりする)
Severity
は作成後の詳細画面で入力可能。
自動的にIncident
ラベルが追加される。 (後からラベルを追加してもType
はIncident
にはならない)
- Description
-
チェックボックス (
- [ ]
) を記載するとタスクリストとして認識される。 (List
画面のタスク数に反映される)
Issue の詳細画面で表示されるチェックボックスはクリックで直接更新可能。 - Confidentiality
-
チェックボックス。
権限がReporter
以上のメンバのみが参照できるように制限する。 - Assignee
-
プルダウン横の
Assign to me
をクリックすると自分を割り当てることが可能。(リストから探さなくて良い) - Milestone
-
Milestones
で作成したマイルストーンを選択する。
ここから新たに作成も可能。(Milestones
画面へ飛ぶけど、入力途中の内容は維持されるのでご安心を) - Labels
-
Labels
で作成したラベルを選択する。 (複数選択可能)
ここから新たに作成も可能。(Labels
画面へ飛ぶけど、入力途中の内容は維持されるのでご安心を) - Due Date
-
期限。
テキストボックスをカーソルを移動するとカレンダーが表示され、日付選択で入力可能。
勿論直接入力も可能。
Issue 更新
List / Boards
から編集可能。
どちらの画面も Issue のタイトルをクリックすることで詳細画面に遷移する。
List
画面は Edit issue
をクリック後、複数のチケットをまとめて更新することができる。
Boards
画面は Issue のタイトル以外の部分をクリックすると右サイドバーが表示され、いくつかの項目を更新できる。
他に D&D でリスト間の移動が可能。
リスト間の移動を行うと、移動先以外にリストとして表示しているラベルが全て削除されるので注意。 (例え Close への移動であってもラベルが削除される)
どんな項目を編集できるかと、一部特殊な項目のみ詳細を。
詳細画面
~ メインエリア ~
- Title
- Description
-
タイトル横の
鉛筆マーク
をクリックすると上記二つの編集エリアが表示される。 - File
-
Type
がIssue
のチケットのみアップロード可能。 - Issue Link
~ サイドバー ~
- Assignees
- Due Date
- Labels
- Confidentiality
- Lock issue
-
- Time Tracking
-
Description
かコメントで見積もり時間を入力すると、設定した見積もり時間が表示される。
入力フォーマットは/estimate 見積もり時間
。
例:/estimate 1d
実際の作業時間は/spend 作業時間
で入力する。
例:/spend 2h
基本的に作業時間は加算されていく。減らしたい場合は-作業時間
を指定する。
詳細は 公式のヘルプ を参照。 - Milestone
-
Type
がIssue
のみ設定可能。 - Epic
-
Type
がIssue
の有償プランのみ設定可能。 - Weight
-
Type
がIssue
の有償プランのみ設定可能。 (無料プランでもトライアルはできそう) - Severity
-
Type
がIncident
のみ設定可能。 - Move Issue
- 紐づくプロジェクトを変更する機能。
List
画面 (まとめて編集)
- Status
- Asignee
- Milestone
- Labels
- Subscription (詳細不明)
Boards
画面 (サイドバー)
- Assignees
- Milestone
- Time Tracking
- Due Date
- Labels
- Notification