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

GitLabでの検索

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

拡大するコードベースや組織で必要なものを見つけましょう。プロジェクト全体の特定のコード、イシュー、マージリクエスト、その他のコンテンツを検索することで、時間を節約できます。ニーズに応じて、basic search(基本的な検索)、advanced search(高度な検索)exact code search(完全一致コードの検索)の3種類の検索から選択できます。

コードの検索の場合、GitLabでは次の順序で各タイプを使用します:

  • 完全一致コードの検索: 完全一致モードと正規表現モードを使用できます。
  • 高度な検索: 完全一致コードの検索が利用できない場合に使用します。
  • Basic search(基本的な検索): 完全一致コードの検索と高度な検索が利用できない場合、またはデフォルト以外のブランチに対して検索する場合に使用します。このタイプは、グループ検索またはグローバル検索をサポートしていません。

使用可能なスコープ

スコープは、検索するデータの種類を表します。基本的な検索では、次のスコープを使用できます:

スコープグローバル1グループプロジェクト
コードdash-circle 非対応dash-circle 非対応check-circle-filled 対応
コメントdash-circle 非対応dash-circle 非対応check-circle-filled 対応
コミットdash-circle 非対応dash-circle 非対応check-circle-filled 対応
エピックdash-circle 非対応check-circle-filled 対応dash-circle 非対応
イシューcheck-circle-filled 対応check-circle-filled 対応check-circle-filled 対応
マージリクエストcheck-circle-filled 対応check-circle-filled 対応check-circle-filled 対応
マイルストーンcheck-circle-filled 対応check-circle-filled 対応check-circle-filled 対応
プロジェクトcheck-circle-filled 対応check-circle-filled 対応dash-circle 非対応
ユーザーcheck-circle-filled 対応check-circle-filled 対応check-circle-filled 対応
Wikidash-circle 非対応dash-circle 非対応check-circle-filled 対応

Footnotes(補足説明):

  1. 管理者は、グローバル検索のスコープを無効にできます

検索タイプを指定する

検索タイプを指定するには、search_type URLパラメータを次のように設定します:

search_typeは、非推奨のbasic_searchパラメータを置き換えます。詳細については、イシュー477333を参照してください。

検索アクセスを制限する

  • 提供形態: GitLab Self-Managed

前提要件:

  • インスタンスへの管理者アクセス権が必要です。

デフォルトでは、/searchへのリクエストとグローバル検索は、未認証ユーザーも利用できます。

/searchを認証済みユーザーのみに制限するには、次のいずれかを実行します:

  • プロジェクトまたはグループの表示レベルを制限します。

  • 管理者エリアでアクセスを制限します:

    1. 左側のサイドバーの下部で、管理者を選択します。
    2. 設定 > 検索を選択します。
    3. 高度な検索を展開します。
    4. 未承認ユーザーが検索の使用を許可するチェックボックスをオフにします。
    5. 変更を保存を選択します。

グローバル検索を認証済みユーザーのみに制限するには:

  1. 左側のサイドバーの下部で、管理者を選択します。
  2. 設定 > 検索を選択します。
  3. 表示レベルとアクセス制御を展開します。
  4. グローバル検索を承認されたユーザーだけに制限するチェックボックスをオンにします。
  5. 変更を保存を選択します。

グローバル検索スコープを無効にする

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

前提要件:

  • インスタンスへの管理者アクセス権が必要です。

インスタンスのグローバル検索のパフォーマンスを向上させるには、1つまたは複数の検索スコープを無効にします。GitLab Self-Managedインスタンスでは、すべてのグローバル検索スコープがデフォルトで有効になっています。

1つまたは複数のグローバル検索スコープを無効にするには:

  1. 左側のサイドバーの下部で、管理者を選択します。
  2. 設定 > 検索を選択します。
  3. 表示レベルとアクセス制御を展開します。
  4. 無効にするスコープのチェックボックスをオフにします。
  5. 変更を保存を選択します。

グローバル検索の検証

グローバル検索では、以下を含む検索はすべて不正なものとして無視され、ログに記録されます:

  • 2文字未満の語句
  • 100文字を超える語句(URL検索語句は200文字を超えることができません)
  • ストップワードのみ(例: theandif
  • 不明なscope
  • 完全に数値ではないgroup_idまたはproject_id
  • Git refnameで許可されていない特殊文字を含むrepository_refまたはproject_ref

グローバル検索では、以下を超える検索のみにエラーフラグが付きます:

  • 4,096文字
  • 64語

部分一致はイシュー検索ではサポートされていません。たとえば、playのイシューを検索すると、クエリはdisplayを含むイシューを返しません。ただし、クエリは考えられる文字列のバリエーション(例: plays)すべてに一致しています。

オートコンプリート候補

この機能の利用可否は、機能フラグによって制御されます。詳細については、履歴を参照してください。

検索ボックスに入力すると、次のオートコンプリート候補が表示されます:

  • プロジェクトとグループ
  • 承認されたプロジェクトとグループのユーザー
  • ヘルプページ
  • プロジェクト機能(マイルストーンなど)
  • 設定(ユーザー設定など)
  • 最近表示したマージリクエスト
  • 最近表示したイシューとエピック
  • プロジェクト内のイシューのGitLab Flavored Markdown参照

すべてのGitLabで検索する

すべてのGitLabで検索するには:

  1. 左側のサイドバーで、検索または移動先を選択します。
  2. 検索クエリを入力します。2文字以上入力する必要があります。
  3. Enterキーを押して検索するか、リストから選択します。

結果が表示されます。結果をフィルター処理するには、左側のサイドバーでフィルターを選択します。

プロジェクトで検索する

プロジェクトで検索するには:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 検索または移動先を再度選択し、検索する文字列を入力します。
  3. Enterキーを押して検索するか、リストから選択します。

結果が表示されます。結果をフィルター処理するには、左側のサイドバーでフィルターを選択します。

フルパスでプロジェクトを検索

検索ボックスに完全なパス(ネームスペースを含む)を入力して、プロジェクトを検索できます。プロジェクトのパスを入力すると、オートコンプリート候補が表示されます。

次に例を示します:

  • gitlab-org/gitlabは、gitlab-orgネームスペース内のgitlabプロジェクトを検索します。
  • gitlab-org/は、gitlab-orgネームスペースに属するプロジェクトのオートコンプリート候補を表示します。

検索結果にアーカイブされたプロジェクトを含める

デフォルトでは、アーカイブされたプロジェクトは検索結果から除外されます。検索結果にアーカイブされたプロジェクトを含めるには、次の操作を行います:

  1. 検索ページの左側のサイドバーで、アーカイブを含むチェックボックスをオンにします。
  2. 左側のサイドバーで、適用を選択します。

コードを検索する

プロジェクトでコードを検索するには:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 検索または移動先を再度選択し、検索するコードを入力します。
  3. Enterキーを押して検索するか、リストから選択します。

コード検索には、ファイル内の最初の結果のみが表示されます。すべてのGitLabでコードを検索するには、管理者に高度な検索を有効化するよう依頼してください。

検索結果を見つけたら、結果が見つかった行に最後に変更を加えたユーザーを表示できます。

  1. コード検索結果から、行番号にカーソルを合わせます。
  2. 左側で、blameの表示の表示を選択します。

コード検索結果を言語別にフィルタリングする

1つ以上の言語でコード検索結果をフィルタリングするには:

  1. コード検索ページの左側のサイドバーで、1つ以上の言語を選択します。
  2. 左側のサイドバーで、適用を選択します。

コミットSHAを検索する

コミットSHAを検索するには:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 再度検索または移動先を選択し、検索するコミットSHAを入力します。
  3. Enterキーを押して検索するか、リストから選択します。

単一の結果が返された場合、GitLabはコミット結果にリダイレクトし、検索結果ページに戻るオプションを提供します。

構文

ベーシック検索は、次のオプションと完全に一致するサブストリングを使用します:

構文説明
filename:ファイル名filename:*spec.rb
path:リポジトリの場所(完全一致または部分一致)path:spec/workers/
extension:.なしのファイル拡張子(完全一致のみ)extension:js

クエリ説明
rails -filename:gemfile.lockgemfile.lockファイルを除くすべてのファイルのrailsを返します。
helper -extension:yml -extension:js.yml拡張子または.js拡張子のファイルを除く、すべてのファイルのhelperを返します。
helper path:lib/gitパスにlib/git*の付くすべてのファイル(spec/lib/gitlabなど)のhelperを返します。