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:only to your query. For more information, see "Searching in forks."
- 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
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.
||jquery in:name matches repositories with "jquery" in their name.|
||jquery in:name,description matches repositories with "jquery" in their name or description.|
||jquery in:readme matches repositories mentioning "jquery" in their README file.|
Search based on the size of a repository
size qualifier finds repositories that match a certain size (in kilobytes), using greater than, less than, and range qualifiers.
||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 the number of forks
forks qualifier specifies the number of forks a repository should have, using greater than, less than, and range qualifiers.
||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
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 (
Dates support greater than, less than, and range qualifiers.
||webos created:<2011-01-01 matches repositories with the word "webos" that were created before 2011.|
||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:defunkt forks:>100 matches repositories from @defunkt that have more than 100 forks.|
||org:github matches repositories from GitHub.|
Search based on the main language of a repository
You can also search repositories based on what language they're written in.
Search based on the number of stars a repository has
||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.|