summaryrefslogtreecommitdiff
path: root/doc/user/project/repository/file_finder.md
blob: ac10071e5781128592a93ff8ddfd6c85529dfc4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
---
disqus_identifier: 'https://docs.gitlab.com/ee/workflow/file_finder.html'
---

# File finder

> [Introduced](https://github.com/gitlabhq/gitlabhq/pull/9889) in GitLab 8.4.

The file finder feature allows you to search for a file in a repository using the
GitLab UI.

You can find the **Find File** button when in the **Files** section of a
project.

![Find file button](img/file_finder_find_button_v12_10.png)

For those who prefer to keep their fingers on the keyboard, there is a
[shortcut button](../../shortcuts.md) as well, which you can invoke from _anywhere_
in a project.

Press `t` to launch the File search function when in **Issues**,
**Merge requests**, **Milestones**, even the project's settings.

Start typing what you are searching for and watch the magic happen. With the
up/down arrows, you go up and down the results, with `Esc` you close the search
and go back to **Files**

## How it works

The File finder feature is powered by the [Fuzzy filter](https://github.com/jeancroy/fuzz-aldrin-plus) library.

It implements a fuzzy search with the highlight and tries to provide intuitive
results by recognizing patterns that people use while searching.

For example, consider the [GitLab FOSS repository](https://gitlab.com/gitlab-org/gitlab-foss/tree/master) and that we want to open
the `app/controllers/admin/deploy_keys_controller.rb` file.

Using a fuzzy search, we start by typing letters that get us closer to the file.

**Tip:** To narrow down your search, include `/` in your search terms.

![Find file button](img/file_finder_find_file_v12_10.png)