This page last changed on Feb 15, 2011 by jhinch.

FishEye allows you a number of ways to search through the repository to find particular changesets or files.

Methods of searching are described below:

Quick Nav

Quick Nav results appear as soon as you start typing into the 'Quick Search' box in FishEye, before you've pressed Enter to visit the full page of search results. Results are weighted by most recent edit date; files edited within the last twelve months are given greater weighting.

Quick Nav supports the following powerful search features:

CamelCase detection
You can type a string like "UpA" to quickly find a name such as "UnplannedArchitecture". This is a common feature in IDE search systems.

Multiple directory selection
You can type the following:

common/final/Actions

to find a path like this:

/src/common/eu/systemworks/specialprojects/final/Actions.java

Results constrained to one repository
When you begin your quick search a page by clicking the 'Source' tab, then choosing a repository (or any page below it), FishEye Quick Nav will only show you results from the repository you're currently browsing. When you're viewing the index of repositories, the Dashboard, or tabs other than the 'Source' tab, Quick Nav will show you results from all the repositories connected to FishEye.

Screenshot: Quick Nav in FishEye

Quick Search

To use this search, enter your search term in the 'Search' box in the top right hand corner of the FishEye screens and hit the <return> key.
If you are in the context of a repository, your search will be restricted by that repository.

Screenshot: Quick Search Box

Once the <return> key is hit, you will see a search results page similar to:

Results are split into 5 different search categories:

  • Files and Directories : any file name or directory name, ever committed to your SCM
  • Changeset Comments : all commit messages
  • Diffs : both added and removed lines of source 
  • Content : contents of files at their latest revisions (HEAD)
  • Committers : a committer name - someone who has committed to the SCM

Results are sorted by relevance and boosted if they were edited recently. A maximum of 10 results are displayed per page.

Restricting searches by prefixing database field
You can search matches against a given field, by using a search in this format:

committer:anna
This would return all results from the committer field that match the string 'anna'.

Searches can be specifically restricted to the following available fields:

  • file
  • comment
  • diff
  • content
  • committer

Searching within directories

Quick Search supports AntGlobs to make searching within a specific directory easy.

The following query: /src/**/gwt/*.xml will return all files with a .xml suffix that are below both a src and a gwt directory.
e.g. src/java/com/atlassian/fecru/gwt/FecruCore.gwt.xml but not src/java/com/atlassian/fecru/ApplicationContext.xml

Searching for discrete strings
To search for a specific string that appears discretely, search with quotation marks, as in the following example:

"Code Monkey"
This search will only return results that have both terms present. The example above would not return "Node Monkey", "Code Web Monkey".
Note that quick searches do not take case into account.

A note about searching multiple repositories:

Cross-repository searching has a 100 repository limitation on searches, to prevent it from becoming unresponsive and consuming server resources on FishEye instances that have large numbers of repositories. This means that cross-repository quicksearch is not an exhaustive search, and may not include all repositories in a large Fisheye instance. For exhaustive searches, you should limit your search to a particular repository, if possible.

Advanced Search

To access the advanced search screen, click the 'Search' sub-tab when browsing a repository, or the link directly on the Quick Search page.

Screenshot: FishEye Simple Search panel

You can use this search to retrieve a list of changesets/files using the filters that are available. You can search using one or more of the following filters:

  • Commit comments
  • Contents of files — files must be non-binary, less than 5MB, and for svn repositories on trunk only. NB: only HEAD/tip revisions are searched. For older revisions use added/removed text search.
  • Added text/removed text
  • File names/paths — Antglobs can be used
  • Authors
  • Branch names
  • Tag names
  • Revision dates before and after.

Results can be grouped by the following:

  • Changeset
  • Revision
  • File
  • Directory.

You can choose to include any or all of the following fields in the results:

  • Path
  • Revision
  • Author
  • Date
  • Comment
  • Changeset
  • Total lines
  • Total lines added
  • Total lines removed
  • Tags
  • Reviews (if you are using Crucible).

The results are shown in a tabular format. You can link to the search results, and you can save the results to a CSV file.

Advanced Search - EyeQL

In some circumstances the results of a simple search may not be specific enough. Using the advanced search, you can create your own complex searches using FishEye's powerful query language called EyeQL.

Screenshot: FishEye Advanced Search

To do an advanced search, click the 'Switch to EyeQL Search' link found at the bottom of the Simple Search screen.

Use Simple Search to build your basic query first
You can flick between Simple and Advanced Search. The EyeQL statement will contain the basics of the statement and you can adapt it as required.

Document generated by Confluence on Apr 03, 2011 23:09