正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

リビジョンを比較する

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

リビジョンを比較を使用して、リビジョン間で変更されたコミットとファイルのリストを表示します。

比較できます:

  • あるブランチと別のブランチ。
  • あるタグとブランチまたはタグ。
  • あるコミットと別のコミットまたはブランチ。

比較方法

GitLabは、リビジョンを比較するための2つの方法を提供します:

  • ソースからの変更のみ: 両方のリビジョンにおける最新の共通コミット以降の、ソースからの差分を表示します。この方法では、ソースの作成後にターゲットに対して行われた無関係な変更を除外します。ソースリビジョンによって導入された変更のみを表示するためにこれを使用します。

    この方法では、git diff <from>...<to> Gitコマンドを使用します。これは、実際のコミットを直接比較するのではなく、マージベース(共通の祖先コミット)からターゲットと比較します。

  • ソース作成以降のターゲットへの変更を含める: ソースとターゲットの両方に対して行われた変更を含め、2つのリビジョン間のすべての差分を表示します。これを使用して、リポジトリの履歴における2つの時点間の完全な差分を表示します。

    この方法では、git diff <from> <to> Gitコマンドを使用します。これは、実際のコミットを直接比較し、それらの間のすべての変更を表示します。

ブランチ、タグ、またはコミットを比較する

リビジョンを比較するには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。

  2. 左サイドバーで、コード > リビジョンを比較を選択します。

  3. ソースリビジョンを選択します:

    • ブランチを検索するには、ブランチ名を入力します。最初に完全一致が表示されます。
    • タグを検索するには、タグ名を入力します。
    • コミットを検索するには、コミットSHAを入力します。
    • 演算子を使用して検索を絞り込むには:
      • ^は名前の先頭に一致します: ^featfeat/user-authenticationに一致します。
      • $は名前の末尾に一致します: widget$feat/search-box-widgetに一致します。
      • *はワイルドカードを使用して一致します。branch*cache*fix/branch-search-cache-expirationと一致します。
      • 演算子を組み合わせることができます。^chore/*migration$chore/user-data-migrationと一致します。
  4. ターゲットリポジトリとリビジョンを選択します。

  5. 変更を表示の下で、ソースからの変更のみまたはソース作成以降のターゲットへの変更を含めるのいずれかを選択します。

  6. 比較を選択します。

  7. オプション。ソースターゲットを元に戻すには、リビジョンの入れ替え substitute )を選択します。

比較ページには、リビジョン間で変更されたコミットとファイルのリストが表示されます。

環境で表示

リビジョンを比較する際に、デプロイ済みの環境でファイルを直接プレビューできます。

前提条件:

  • プロジェクト用にルートマップが設定されていること。
  • プレビューしたいファイルがルートマップの設定に含まれている。
  • アクセス可能な環境。

デプロイ済みの環境でファイルをプレビューするには:

  1. 上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左サイドバーで、コード > リビジョンを比較を選択します。
  3. 比較したいソースターゲットのブランチまたはコミットを選択します。
  4. ファイル差分ビューで、ルートマップの設定に含まれているファイルを見つけます。
  5. ファイルの追加のアクションメニュー( ellipsis_v )を選択します。
  6. **View on [environment name]**を選択します。

ファイルは新しいタブで開き、デプロイ済みの環境での表示方法を示します。