You can search for repositories by using search qualifiers in any combination to narrow your search results.

To include forks in the search results, you will need to add fork:true or fork:only to your query. For more information, see "Searching in forks."

Tips:

  • This article contains example searches on the GitHub.com website, but you can use the same search filters on your GitHub Enterprise instance.
  • For a list of search syntaxes that you can add to any search qualifier to further improve your results, see "Understanding the search syntax".
  • Use quotations around multi-word search terms. For example, if you want to search for issues with the label "In progress," you'd search for label:"in progress". Search is not case sensitive.

Scope the search fields

The in qualifier limits what fields are searched. With this qualifier you can restrict the search to just the repository name, description, README, or any combination of these. Without the qualifier, only the name and description are searched.

Qualifier Example
in:name jquery in:name matches repositories with "jquery" in their name.
in:description jquery in:name,description matches repositories with "jquery" in their name or description.
in:readme jquery in:readme matches repositories mentioning "jquery" in their README file.

Search based on the size of a repository

The size qualifier finds repositories that match a certain size (in kilobytes), using greater than, less than, and range qualifiers.

Qualifier Example
size:n size:1000 matches repositories that are 1 MB exactly.
size:>=30000 matches repositories that are at least 30 MB.
size:<50 matches repositories that are smaller than 50 KB.
size:50..120 matches repositories that are between 50 KB and 120 KB.

Search based on whether a repository is private or public

You can filter your search based on whether a repository is private or public.

Qualifier Example
is:private is:private pages matches private repositories you have access to and that contain the word "pages."
is:public is:public org:github matches repositories owned by GitHub that are public.

Search based on whether a repository is a mirror

You can search repositories based on whether or not they're a mirror and are hosted elsewhere.

Qualifier Example
mirror:true mirror:true GNOME matches repositories that are mirrors and contain the word "GNOME."
mirror:false mirror:false GNOME matches repositories that are not mirrors and contain the word "GNOME."

Search based on the number of forks

The forks qualifier specifies the number of forks a repository should have, using greater than, less than, and range qualifiers.

Qualifier Example
forks:n forks:5 matches repositories with only five forks.
forks:>=205 matches repositories with at least 205 forks.
forks:<90 matches repositories with fewer than 90 forks.
forks:10..20 matches repositories with 10 to 20 forks.

Search based on when a repository was created or last updated

You can filter repositories based on time of creation or time of last update. For repository creation, you can use the created qualifier; to find out when a repository was last updated, you'll want to use the pushed qualifier. The pushed qualifier will return a list of repositories, sorted by the most recent commit made on any branch in the repository.

Both take a date as a parameter. Date formatting must follow the ISO8601 standard, which is YYYY-MM-DD (year-month-day). You can also add optional time information THH:MM:SS+00:00 after the date, to search by the hour, minute, and second. That's T, followed by HH:MM:SS (hour-minutes-seconds), and a UTC offset (+00:00).

Dates support greater than, less than, and range qualifiers.

Qualifier Example
created:YYYY-MM-DD webos created:<2011-01-01 matches repositories with the word "webos" that were created before 2011.
pushed:YYYY-MM-DD css pushed:>2013-02-01 matches repositories with the word "css" that were pushed to after January 2013.
case pushed:>=2013-03-06 fork:only matches repositories with the word "case" that were pushed to on or after March 6th, 2013, and that are forks.

Search within a user's or organization's repositories

To grab a list of a user's or organization's repositories, you can use the user or org qualifier.

Qualifier Example
user:USERNAME user:defunkt forks:>100 matches repositories from @defunkt that have more than 100 forks.
org:ORGNAME org:github matches repositories from GitHub.

Search by repository topic

You can find all of the repositories that are classified with a particular topic.

Qualifier Example
topic:TOPIC topic:jekyll matches repositories that have been classified with the topic "jekyll."

Search based on the number of topics a repository has

You can find repositories by the number of applied topics, using the topics qualifier along with greater than, less than, and range qualifiers.

Qualifier Example
topics:n topics:5 matches repositories that have five topics.
topics:>3 matches repositories that have more than three topics.

Search based on the main language of a repository

You can also search repositories based on what language they're written in.

Qualifier Example
language:LANGUAGE rails language:javascript matches repositories with the word "rails" that are written in JavaScript.

Search based on the number of stars a repository has

You can search repositories based on the number of stars a repository has, using greater than, less than, and range qualifiers

Qualifier Example
stars:n stars:500 matches repositories with exactly 500 stars.
stars:10..20 matches repositories 10 to 20 stars, that are smaller than 1000 KB.
stars:>=500 fork:true language:php matches repositories with the at least 500 stars, including forked ones, that are written in PHP.

Further reading