GitLabのドキュメント

GitLabのドキュメントへようこそ。

ここでは、DevOpsのライフサイクル全体のためのオールインワンアプリケーションであるGitLabの完全なドキュメントにアクセスできます。

概要

GitLabの使い方に依存しない、ドキュメントを用意しています。

必須ドキュメント 必須ドキュメント
ユーザードキュメント
GitLabユーザーのための機能やコンセプトを紹介します。
管理者用ドキュメント
セルフマネージド版GitLabの管理者が知っておくべきことをすべて網羅しています。
GitLabへの貢献
GitLabでは、誰もが貢献できます。
GitやGitLabを初めてご利用の方
GitやGitLabを始めるためのリソースをご用意しています。
GitLabとのインテグレーションを構築するには?
インテグレーションと統合のドキュメントを参照してください。
他のプラットフォームからGitLabに乗り換えようとしていますか?
便利なガイドを参照してください。
GitLabのインストール
プラットフォームごとのインストールオプション。
お客様
新規・既存のお客様へのご案内です。
GitLabを更新
セルフマネージド版GitLabのインスタンスを最新バージョンに更新します。
リファレンスアーキテクチャ
GitLabのリファレンスアーキテクチャ
GitLabのリリース
GitLabの新機能。
 

私たちの最も人気のあるトピックのいくつかを見てみてください。

人気のトピック 説明
2要素認証 GitLabアカウントのセキュリティを向上させます。
GitLabグループ プロジェクトをまとめて管理する。
GitLab CI/CDパイプライン設定リファレンス .gitlab-ci.yml ファイルで利用可能な設定オプション。
GitLab EEをライセンスで有効化する GitLab Enterprise Editionの機能をライセンスで有効化します。
GitLabのバックアップとリストア GitLabのセルフマネージド版インスタンスのバックアップとリストアのためのRakeタスク。
GitLabのリリースとメンテナンスポリシー バージョン名とリリースサイクルのポリシー、およびアップグレードの推奨事項。
Elasticsearchインテグレーション ElasticsearchをGitLabとインテグレーションし、高度な検索を可能にする。
Omnibus GitLabデータベースの設定 Omnibus GitLabセルフマネージドインスタンスのデータベース設定。
Omnibus GitLab NGINXの設定 Omnibus GitLabセルフマネージドインスタンスのNGINX設定。
Omnibus GitLabのSSL設定 Omnibus GitLabセルフマネージドインスタンスのSSL設定。
GitLab.comの設定 GitLab.comで使用されている設定。

DevOpsライフサイクル全体

GitLabは、ソフトウェア開発、セキュリティ、運用のための初のオールインワンのアプリケーションです。Concurrent DevOpsを実現することで、ソフトウェアのライフサイクルを高速化し、ビジネスのスピードを根本的に向上させます。

GitLabは、DevOpsのライフサイクルの各ステージに対応したソリューションを提供します。

DevOps Stages

GitLabは、ソフトウェアを作るための最高級のキッチンのようなものです。料理長として、どんなソフトウェアを提供するかを決めるのはあなたです。あなたのレシピを使って、下ごしらえから調理、配送まですべてGitLabが処理してくれるので、これまで以上に迅速に注文を処理できます。

以下のセクションでは、各DevOpsステージのドキュメントへのリンクを提供します。

DevOpsステージ ドキュメント
Manage 統計と分析の機能。
Plan プロジェクトの計画と管理の機能。
Create ソースコードやデータを作成、管理。
Verify テスト、コード品質、継続的インテグレーション機能。
Package Dockerコンテナのレジストリ。
Release アプリケーションのリリースとデリバリー機能。
Configure アプリケーションとインフラの設定ツール。
Monitor アプリケーションの監視とメトリクスの機能。
Secure セキュリティの機能。
概要に戻る

Manage

GitLabは、組織でGitLabの価値を最大化するための統計と洞察を提供します。

以下のドキュメントは、DevOpsのManageステージに関するものです。

Manageのトピック 説明
認証と
認可
サポートされる認証、認可プロバイダの説明です。
GitLabバリューストリーム分析 各プロジェクトのアイデアからプロダクションまでの時間を測定します。
インスタンス統計 GitLabの機能をどれだけ使っているか、ユーザー活動の統計を表示します。
概要に戻る

Plan

ウォーターフォール、アジャイル、ConvDevのいずれを使用している場合でも、GitLabは共同作業のワークフローを合理化します。

GitLabの柔軟なプロジェクト管理ツールを使えば、タスクの可視化、優先順位付け、調整、進捗状況の追跡が可能です。

以下のドキュメントは、DevOpsのPlanステージに関するものです。

Planのトピック 説明
バーンダウンチャート 特定のマイルストーンを通して、プロジェクトの進捗状況を確認できます。
ディスカッション 課題、コミット、マージリクエストのスレッド、コメント、解決可能なスレッドの説明です。
期限 課題の締め切りを管理します。
エピック テーマを共有する課題のグループをトラッキングできます。
課題(機密課題を含む)、
課題とマージリクエストのテンプレート
課題を移動
プロジェクトの課題管理、課題へのアクセス制限、新しい課題やマージリクエストを投稿するためのテンプレートの作成ができます。また、プロジェクト間での課題の移動も可能です。
ラベル ラベルで課題やマージリクエストを分類します。
マイルストーン デリバリーのために課題とマージリクエストのマイルストーンを設定します。個別に期限を設定できます。
プロジェクト課題ボード スクラムやカンバンボードに課題を表示します。
クイックアクション 課題やマージリクエストで共通のアクションを行うためのショートカットで、GitLabのUIでボタンをクリックしたりドロップダウンを使用せずに操作できます。
関連する課題 複数の課題を関連付けます。
要件管理 製品を一定の基準に照らし合わせてチェックします。
ロードマップ エピックのタイムラインを視覚化します。
サービスデスク ユーザーアカウントを必要とせずに、GitLabで簡単に課題を作成できるようします。
タイムトラッキング 課題やマージリクエストに費やした時間を記録します。
To-Do シンプルなダッシュボードに表示される時系列のリストで、注意すべきタスクを管理します。
概要に戻る

Create

ソースコードを単一の分散型バージョン管理システムにインテグレーションし、ワークフローを中断することなく簡単に管理・制御できます。

GitLabリポジトリには、ブランチツールとアクセスコントロールが完備されています。そのため、プロジェクトやコード上で共同作業をする、拡張性の高い信頼できる唯一の情報源として利用できます。

以下のドキュメントは、DevOpsのCreateステージに関するものです。

プロジェクトとグループ

Createのトピック - プロジェクトとグループ 説明
高度なグローバル検索 Elasticsearchを活用して、GitLabインスタンス全体を対象としたより高速で高度なコード検索を実現します。
高度な構文検索 高度なクエリを使用して、よりターゲットを絞った検索結果を得ることができます。
貢献度分析 グループ貢献者の詳細な統計を表示します。
プロジェクトの作成フォークインスタンス間
でのプロジェクトのインポートとエクスポート

プロジェクトの作成、複製、移動
ファイルロック マージの競合を避けるためにファイルをロックします。
GitLab Pages GitLab Pagesを使って静的なウェブサイトをビルド、テスト、デプロイします。
グループサブグループ プロジェクトをグループに分けて整理します。
課題分析 月間に何個の課題が作成されたかを確認します。
プロジェクトアクセス管理を含む
プロジェクトの設定
ソースコードをホストし、プロジェクトの可視性を制御し、プロジェクトの設定を行ないます。
GitLabで検索 課題、マージリクエスト、プロジェクト、グループ、およびTo-Doを検索します。
スニペット スニペットを使用すると、ちょっとしたコードを作成できます。
Web IDE GitLabのユーザーインターフェースでファイルを編集します。
静的サイトエディタ 静的なウェブサイトのコンテンツを編集します。
Wiki 組み込みのWikiを使ってリポジトリのドキュメントを強化します。
概要に戻る

リポジトリ

Createのトピック - リポジトリ 説明
ブランチデフォルトブランチ GitLabでのブランチの使い方です。
コミット署名付きコミット 作業をコミット、GPGを使ってコミットに署名します。
ブランチの作成、ファイルの作成
アップロードディレクトリの作成
GitLabの画面でブランチの作成、ファイルの作成とアップロード、ディレクトリの作成ができます。
マージ済みブランチの削除 変更をマージ済みのブランチを一括削除します。
ファイルテンプレート 一般的なファイルのテンプレートです。
ファイル ファイルを管理します。
Jupyter Notebookファイル GitLabで .ipynb ファイルをサポートします。
保護ブランチ 保護ブランチを使用します。
プッシュルール プロジェクトへのプッシュを制御できます。
リポジトリ GitLabのUIでソースコードリポジトリを管理します。
リポジトリのミラーリング GitLab外部のリポジトリに対して、自動的にプッシュ、プルします。
マージリクエストを開始 GitLabのUIからコミットする際に、マージリクエストを開始します。
概要に戻る

マージリクエスト

Createのトピック - マージリクエスト 説明
マージリクエストをローカルでチェックアウト マージリクエストをローカルで処理するためのヒントです。
チェリーピック GitLabを使用して変更をチェリーピックします。
マージリクエストのスレッド解決 マージリクエストの未解決スレッドを課題に移動してスレッドを解決します。また、すべてのスレッドが解決された場合にのみマージリクエストのマージを許可できます。
マージリクエスト マージリクエストを管理します。
作業中 “WIP” マージリクエスト 作業中のマージリクエストのマージを禁止します。
概要に戻る

インテグレーションと自動化

Createのトピック - インテグレーションと自動化 説明
GitLab API シンプルでパワフルなAPIでGitLabをインテグレーションします。
GitLabインテグレーション GitLabと複数のサードパーティのサービスをインテグレーションして、外部の課題管理システムの利用や外部認証を可能にします。
GitLab Webhook 新しいコードがプロジェクトにプッシュされると、GitLabから通知が送信されます。
Jira開発パネル Jira開発パネルのGitLab情報を参照してください。
インテグレーション CIやチャットなどの外部サービスとプロジェクトをインテグレーションします。
Trello Power-Up GitLabとTrelloをインテグレーションします。
概要に戻る

検証

組み込みの静的コード解析、コードテスト、コード品質、依存関係チェック、レビューアプリを使用して、エラーの早期発見とセキュリティの向上を実現しフィードバックサイクルを短縮します。承認ワークフローの制御をカスタマイズ、コードの品質を自動的にテスト、コード変更のたびにステージング環境を起動できます。

GitLabの継続的インテグレーションは、最も人気のある次世代のテストシステムで、テストをより速く実行するために拡張性があります。

以下のドキュメントは、DevOpsのVerifyステージに関するものです。

Verifyのトピック 説明
コード品質レポート ソースコードの品質を分析します。
GitLab CI/CD GitLabを使った継続的インテグレーションの特徴と機能を紹介します。
JUnitテストレポート マージリクエストにJUnitテストレポートを表示します。
複数プロジェクトのパイプライン 複数のプロジェクトにまたがるパイプライン全体を、プロジェクト間の相互依存関係を含めて可視化します。
パイプライングラフ ビルドを可視化します。
レビューアプリ マージリクエスト上でアプリケーションへの変更をプレビューできます。
概要に戻る

Package

GitLabパッケージを利用することで、GitLabを様々なパッケージマネージャのプライベートリポジトリとして利用できます。ユーザーはパッケージをビルドして公開でき、下流のプロジェクトで依存関係として簡単に利用できます。

以下のドキュメントは、DevOpsのMonitorステージに関するものです。

Packageのトピック 説明
コンテナレジストリ コンテナレジストリを利用することで、すべてのプロジェクトがDockerイメージを保存するためのスペースを持つことができます。
依存関係プロキシ 依存関係プロキシは、頻繁に利用される上流のイメージ/パッケージのローカルプロキシを設定します。
Conanリポジトリ Conanリポジトリを利用することで、すべてのプロジェクトがConanパッケージを保存するためのスペースを持つことができます。
Mavenリポジトリ Mavenリポジトリは、すべてのプロジェクトがMavenパッケージを保存するためのスペースを持つことができます。
NPMレジストリ NPMレジストリを使用すると、すべてのプロジェクトが NPM パッケージを保存するためのスペースを持つことができます。
概要に戻る

Release

ツールの設定にかける時間を減らして、開発にかける時間を増やしましょう。GitLabに組み込みの継続的デリバリー、デプロイメント機能を使えば、1台のサーバーから数千台のサーバーまで、自信を持ってコードをビルド、テスト、リリースできます。

以下のドキュメントは、DevOpsのReleaseステージに関するものです。

Releaseのトピック 説明
自動デプロイ アプリケーションをデプロイするために、GitLabを設定します。
カナリアデプロイメント 最初にアプリケーションのごく一部を新しいバージョンに適用する、人気のCI戦略を利用できます。
デプロイボード Kubernetes上で実行されている各CI環境の現在の健全性と状態を表示し、デプロイされたポッドの状態を表示します。
環境とデプロイメント 環境ごとに、ソフトウェアの継続的デプロイをコントロールできます。
環境固有の変数 変数の範囲を特定の環境に制限できます。
GitLab CI/CD GitLabを使って、継続的なデプロイメントとデリバリの機能を探ってみましょう。
GitLab Pages GitLabから直接、静的なサイトをビルド、テスト、デプロイします。
保護Runner 保護Runnerでは、保護ブランチや保護タグから起動されたジョブのみが実行されます。
スケジュール パイプライン パイプラインをスケジュール通りに実行します。
概要に戻る

設定

GitLab Auto DevOpsを使えば、ビルドからデプロイ、モニタリングまでのワークフロー全体を自動化できます。ベストプラクティスのテンプレートを使えば、最小限の設定でゼロからスタートできます。必要に応じて、ビルドパックからCI/CDまでのすべてをカスタマイズできます。

以下のドキュメントは、DevOpsのConfigureステージに関するものです。

Configureのトピック 説明
Auto DevOps DevOpsのライフサイクル全体を自動化します。
Kubernetesクラスタの作成 CI/CDのデプロイ先としてKubernetesを使用します。
実行可能なランブック 特定のプロセスの実行方法を説明した、実行可能な手順書です。
GitLab ChatOps チャットサービスを利用してCI/CDのジョブとやりとりできます。
アプリケーションのインストール IngressやPrometheusなどのHelm ChartをKubernetesにインストールします。
Mattermostスラッシュコマンド Mattermost内でスラッシュコマンドを使用できます。
複数のKubernetesクラスター 複数のKubernetesクラスタをプロジェクトに関連付けます。
保護変数 変数を保護ブランチや保護タグに制限します。
サーバーレス Kubernetes上でサーバーレスワークロードを実行します。
Slackスラッシュコマンド Slack内でスラッシュコマンドを使用できます。
Terraformでインフラを管理 CI/CDパイプラインを利用して、インフラを管理します。
概要に戻る

Monitor

アプリケーションの応答性と可用性を常に確保しましょう。

GitLabは、デプロイされたアプリケーションのパフォーマンス・メトリクスを収集して表示するので、コードの変更が本番環境にどのような影響を与えるかを瞬時に知ることができます。

以下のドキュメントは、DevOpsのMonitorステージに関するものです。

Monitorのトピック 説明
GitLabパフォーマンス監視 PrometheusとGrafanaを使ってGitLabインスタンスのパフォーマンスを監視します。
GitLab Prometheus バンドルされているPrometheusを設定して、GitLabインスタンスからさまざまなメトリクスを収集します。
ヘルスチェック GitLabは、サービスの健全性と必要なサービスへの到達性を示すために、Liveness ProbeとReadiness Probeを提供します。
プロジェクトのPrometheusインテグレーション プロジェクトごとにPrometheusインテグレーションを設定し、CI/CD環境を監視します。
Prometheusのメトリクス Prometheusで、Kubernetes、NGINX、NGINX Ingressコントローラ、HAProxy、Amazon Cloud Watchのような様々なサービスからメトリクスを収集します。
インシデント管理 GitLabを使って、システムで発生しうるインシデントへの対応を改善します。
概要に戻る

Secure

不正アクセスやデータ漏洩、サービス拒否につながる可能性のあるセキュリティ上の脆弱性がアプリケーションにないかチェックしましょう。GitLabは、アプリケーションのコードに対して静的テストと動的テストを実行し、既知の欠陥を探してマージリクエストで報告します。これにより、コードをマージする前に修正できます。セキュリティチームはダッシュボードを使用してプロジェクトやグループのセキュリティ課題を高レベルで把握し、必要に応じて修正プロセスを開始できます。

以下のドキュメントは、DevOpsのSecureステージに関するものです。

Secureのトピック 説明
コンプライアンス ダッシュボード グループ内で最新のマージリクエストのアクティビティーを表示します。
コンテナの脆弱性スキャン Clairを使って、既知の脆弱性がないかDockerイメージをスキャンします。
依存関係リスト プロジェクトの依存関係と既知の脆弱性を表示します。
依存関係の脆弱性スキャン 既知の脆弱性がないか、依存関係を分析します。
動的アプリケーションセキュリティテスト (DAST) 既知の脆弱性がないか実行中のWebアプリケーションを分析します。
グループセキュリティダッシュボード グループ内のすべてのプロジェクトとそのサブグループの脆弱性を表示します。
インスタンス セキュリティ ダッシュボード 監視対象として登録したすべてのプロジェクトの脆弱性を表示します。
ライセンスコンプライアンス プロジェクトの依存関係のライセンスを検索します。
パイプラインのセキュリティ プロジェクトのパイプラインのセキュリティレポートを表示します。
プロジェクト セキュリティ ダッシュボード プロジェクトの最新のセキュリティレポートを表示します。
静的アプリケーションセキュリティテスト (SAST) 既知の脆弱性がないかソースコードを分析します。

GitやGitLabを初めてご利用の方

新しいシステムを扱うのは大変なことです。

私たちは、あなたのGitLabの知識を迅速に向上させるために、次のようなドキュメントを用意しています。

トピック 説明
GitLabの基本ガイド コマンドラインとGitLabで作業を開始します。
GitLabワークフローの概要 GitLabを使用して、あなたのワークフローを改善します。
GitLab CI/CDを使い始める GitLab CI/CDの利用を開始するのに役立つ資料です。
Auto DevOps GitLabのAuto DevOpsについてはこちらをご覧ください。
GitLab Markdown GitLabの高度な書式設定システム(GitLab Flavored Markdown)のリファレンスです。
概要に戻る

ユーザーアカウント

GitLabのアカウント管理についてはこちらをご覧ください。

トピック 説明
ユーザーアカウント アカウントを管理します。
認証 2要素認証によるアカウントセキュリティ、およびプロジェクトへのセキュアなアクセスのためにSSHキーとデプロイキーを設定します。
プロフィールの設定 プロフィール設定、2要素認証などを管理します。
ユーザー権限 プロジェクトの各役割で何ができるのかを学びます。
概要に戻る

GitとGitLab

Gitの使い方、GitLabでのGitの使い方について詳しく解説しています。

トピック 説明
Git Gitを始めるにあたって、ブランチ戦略、Git LFS、そして高度な使い方を学びます。
Gitチートシート 最もよく使われるGitの操作を説明したPDFをダウンロードできます。
GitLab Flow GitLab Flow戦略でGitの良さを探りましょう。
概要に戻る

別のプラットフォームからGitLabへの乗り換え

他のプラットフォームからGitLabに乗り換える場合は、以下の情報を参考にしてください。

トピック 説明
GitLabへのインポート GitHub、Bitbucket、GitLab.com、FogBugz、SVNからGitLabにプロジェクトをインポートします。
SVNからの移行 SVNリポジトリをGitやGitLabに変換します。
概要に戻る

GitLabとのインテグレーションを構築する

GitLabとのインテグレーションには、以下のような方法があります。

トピック 説明
GitLab API シンプルでパワフルなAPIでGitLabをインテグレーションします。
インテグレーションと自動化 すべてのGitLabインテグレーションおよび自動化のオプションです。
概要に戻る

GitLabへの貢献

GitLab Community Editionはオープンソース、GitLab Enterprise Editionはオープンコアです。

以下のリソースを使ってGitLabに貢献する方法を学びましょう。

トピック 説明
開発 GitLabの開発に貢献する方法です。
リーガル 貢献者ライセンス契約。
ドキュメントの作成 GitLabのドキュメントに貢献する方法。
概要に戻る