Searching in GitLab All tiers All offerings

GitLab has two types of searches available: basic and advanced.

Both types of search are the same, except when you are searching through code.

  • When you use basic search to search code, your search includes one project at a time.
  • When you use advanced search to search code, your search includes all projects at once.

Global search scopes All tiers Self-managed

Introduced in GitLab 14.3.

To improve the performance of your instance’s global search, an administrator can limit the search scope by disabling one or more ops feature flags.

Scope Feature flag Description
Code global_search_code_tab When enabled, global search includes code.
Commits global_search_commits_tab When enabled, global search includes commits.
Epics global_search_epics_tab When enabled, global search includes epics.
Issues global_search_issues_tab When enabled, global search includes issues.
Merge requests global_search_merge_requests_tab When enabled, global search includes merge requests.
Users global_search_users_tab When enabled, global search includes users.
Wiki global_search_wiki_tab When enabled, global search includes project and group wikis.

All global search scopes are enabled by default on self-managed instances.

Global search validation

Version history
  • Support for partial matches in issue search removed in GitLab 14.9 with a flag named issues_full_text_search. Disabled by default.
  • Generally available in GitLab 16.2. Feature flag issues_full_text_search removed.

Global search ignores and logs as abusive any search that includes:

  • Fewer than two characters
  • A term longer than 100 characters (URL search terms must not exceed 200 characters)
  • A stop word only (for example, the, and, or if)
  • An unknown scope
  • group_id or project_id that is not completely numeric
  • repository_ref or project_ref with special characters not allowed by Git refname

Global search only flags with an error any search that includes more than:

  • 4096 characters
  • 64 terms

Partial matches are not supported in issue search. For example, when you search issues for play, the query does not return issues that contain display. However, the query matches all possible variations of the string (for example, plays).

Autocomplete suggestions

As you type in the search box, autocomplete suggestions are displayed for:

  • Projects and groups
  • Users
  • Help pages
  • Project features (for example, milestones)
  • Settings (for example, user settings)
  • Recently viewed merge requests
  • Recently viewed issues and epics
  • GitLab Flavored Markdown references for issues in a project

Search in all GitLab

To search in all GitLab:

  1. On the left sidebar, at the top, select Search or go to.
  2. Type your search query. You must type at least two characters.
  3. Press Enter to search, or select from the list.

The results are displayed. To filter the results, on the left sidebar, select a filter.

Search in a project

To search in a project:

  1. On the left sidebar, select Search or go to and find your project.
  2. Select Search or go to again and type the string you want to search for.
  3. Press Enter to search, or select from the list.

The results are displayed. To filter the results, on the left sidebar, select a filter.

Search for a project by full path

Version history

You can search for a project by entering its full path (including the namespace it belongs to) in the search box. As you type the project path, autocomplete suggestions are displayed.

For example:

  • gitlab-org/gitlab searches for the gitlab project in the gitlab-org namespace.
  • gitlab-org/ displays autocomplete suggestions for projects that belong to the gitlab-org namespace.

Include archived projects in search results

Version history

By default, archived projects are excluded from search results. To include archived projects in search results:

  1. On the search page, on the left sidebar, select the Include archived checkbox.
  2. On the left sidebar, select Apply.

Search for code

To search for code in a project:

  1. On the left sidebar, select Search or go to and find your project.
  2. Select Search or go to again and type the code you want to search for.
  3. Press Enter to search, or select from the list.

Code search shows only the first result in the file. To search for code in all GitLab, ask your administrator to enable advanced search.

Introduced in GitLab 14.7.

After you find search results, you can view who made the last change to the line where the results were found.

  1. From the code search result, hover over the line number.
  2. On the left, select View blame.

Filter code search results by language

Introduced in GitLab 15.10.

To filter code search results by one or more languages:

  1. On the code search page, on the left sidebar, select one or more languages.
  2. On the left sidebar, select Apply.

Search for a commit SHA

To search for a commit SHA:

  1. On the left sidebar, select Search or go to and find your project.
  2. Select Search or go to again and type the commit SHA you want to search for.
  3. Press Enter to search, or select from the list.

If a single result is returned, GitLab redirects to the commit result and gives you the option to return to the search results page.

Run a search from history

You can run a search from history for issues and merge requests. Search history is stored locally in your browser. To run a search from history:

  1. On the left sidebar, select Search or go to and find your project.
  2. To view recent searches:

    • For issues, on the left sidebar, select Plan > Issues. Above the list, to the left of the search box, select ().
    • For merge requests, on the left sidebar, select Code > Merge requests. Above the list, to the left of the search box, select Recent searches.
  3. From the dropdown list, select a search.