TECHSTEP

ITインフラ関連の記事を公開してます。

GitLab Projectを整理する

今回はGitLab Projectでできる操作などを簡単に整理します。

docs.gitlab.com

Projectとは

GItLab Projectは、GIt管理するソースコードの置き場所を提供します。またProjectはIssueやMilestoneによる開発プロジェクトの管理、GitLab CI/CDによる自動ビルド・デプロイ、アクセストークンの発行や管理などの機能も提供し、GitLabを利用する上では必須のリソースです。

Projectへのアクセス権

GitLab Projectは、Projectの公開する範囲に応じて大きく以下の3種類に分けられます。

  • Public: GitLabの認証ユーザー以外もアクセス可能
  • Internal: GitLabの認証ユーザーがアクセス可能
  • Private: Projectのメンバーがアクセス可能

Projectのアクセスレベルを変更するには、Projectの 設定一般 から プロジェクトの表示レベル を修正します。

docs.gitlab.com

Projectの操作

Projectの作成

Projectの作成方法は以前触れたことがあるので、ここでは割愛します。

techstep.hatenablog.com

なおGitLab Project (Group) には予約済みのProject (Group) 名が存在し、該当の名称は作成時に利用できません。

docs.gitlab.com

Projectを表示する

ユーザーがProjectにアクセスするには、そのProjectがPublicであるか、またはProjectにメンバーに登録されている必要があります。各Projectを選択すると、以下のような画面が表示されます。

アクセスしたProjectのURLは以下のようになります。

  • 個人のNamespace配下の場合: https://gitlab.com/<Namespace名>/<Project名>
  • Group配下の場合: https://gitlab.com/<Group名>/<Project名>

またProjectは一意なIDが振られるので、https://gitlab.com/projects/<id> のようにIDを指定してアクセスすることも可能です。

Projectのトップ画面では、以下のような情報を確認できます。

  • Project名
  • Projectの説明
  • Projectに含まれるファイル群
  • Topic
  • Badge
  • Star / Forkなどの数
  • Projectのストレージサイズ
  • READMEの記載内容
  • 作成日

Project情報を修正する

Project名や説明、アバターなどは修正できます。ただしProject URLはProject名変更後も作成時のものから変更されません。

Project URLを変更するには、GitLab設定画面の 設定一般 から 高度な設定 に移動し、 パスを変更 から変更する必要があります。

docs.gitlab.com

Project上のイベントを閲覧する

Project上のイベントを確認するには、 管理アクティビティー から確認します。

ここで確認できる情報は以下のイベントです。

  • Push events: Project内のPushイベント
  • Merge events: Project内のAcceptされたMerge request
  • Issue events: Project内のOpen/ClosedなIssue
  • Comments: Projectメンバーによるコメント
  • Designs: Project内で追加・更新・削除されたデザイン
  • Team: Projectに参加・離脱したメンバー

docs.gitlab.com

Topic

docs.gitlab.com

TopicはProjectの役割や扱うソフトウェアを分かりやすくするラベルとして機能します。GitLabのドキュメントでは python hackathon という2つのTopicを使う例を紹介しており、このように開発言語や用途ごとにTopicを付与することができます。

Topicの設定はProjectの 設定一般 から可能です。

Topicを設定すると、以下のようにProject概要にも表示されます。

またTopicはProjectの検索でも利用できます。 GitLabの 検索 から トピック を選択すると、以下のようにTopicの一覧や検索窓が表示されます。

Badge

docs.gitlab.com

BadgeもProjectの情報を可視化する機能です。Badgeは以下の3種類が利用可能です。TopicがProjectの扱うテーマを表したのに対し、Badgeは現在のProjectの状況を表すものと言えそうです。

Badgeの設定もProjectの 設定一般 から可能です。

ここではPipeline statusを設定してみます。以下のようにパラメータを設定します。

Badgeを設定すると、以下のようにProject概要に表示されます。

Projectをインポートする

docs.gitlab.com

GitLabでは、GitLab中の別Projectから、または別のソースコード管理サービスのリポジトリから、新しいProjectを作成できます。

ProjectのImport画面を見ると、以下のようにGitLab / BitBucket Cloud / FogBugzのほか、GitHub / AWS CodeCommitなどもURLを指定すればインポートできます。

Projectを移動する

docs.gitlab.com

ProjectはあるNamespaceから別のNamespaceに、または別のプランに移動できます。Projectを移動するにはProjectの 設定一般プロジェクトを転送 から、あるいはコンソールから実行できます。

Projectを削除する

Projectを削除するには、対象ProjectでOwner Roleが割り当てられている必要があります。Projectの削除もProjectの 設定一般 から可能です。

なおProjectの削除されるタイミングですが、個人NamespaceとGroupの場合で異なります。

  • 個人Namespace配下の場合: 即時削除される
  • Group配下の場合: 一定期間経過後に削除される

その他

Projectに関する以下の機能はPremium / Ultimateプランで利用できます。