Movatterモバイル変換


[0]ホーム

URL:


Skip to main content
GitHub Docs

Searching code (legacy)

You only need to use the legacy code search syntax if you are using the code search API.

Note

This article covers the syntax for legacy code search, which you should only need to use for theREST API endpoint for searching code.

For information on the code search syntax that you can use on GitHub, seeUnderstanding GitHub Code Search syntax.

You can search globally across all of GitHub, or scope your search to a particular repository or organization. For more information, seeAbout searching on GitHub.

You can only search code using these code search qualifiers. Search qualifiers specifically for repositories, users, or commits, will not work when searching for code.

Tip

  • This article contains links to example searches on the GitHub.com website, but you can use the same search filters in any GitHub platform. In the linked example searches, replacegithub.com with the hostname for your GitHub platform.
  • For a list of search syntaxes that you can add to any search qualifier to further improve your results, seeUnderstanding 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 forlabel:"in progress". Search is not case sensitive.

Considerations for code search

Due to the complexity of searching code, there are some restrictions on how searches are performed:

  • You must be signed into a personal account on GitHub to search for code across all public repositories.
  • Code inforks is only searchable if the fork has more stars than the parent repository, and the forked repository has at least one pushed commit after being created. Forks with fewer stars than the parent repository or no commits arenot indexed for code search. To include forks with more stars than their parent and at least one pushed commit in the search results, you will need to addfork:true orfork:only to your query. For more information, seeSearching in forks.
  • Only thedefault branch is indexed for code search.
  • Only files smaller than 384 KB are searchable.
  • Up to 4,000 private repositories are searchable. These 4,000 repositories will be the most recently updated of the first 10,000 private repositories that you have access to.
  • Only repositories with fewer than 500,000 files are searchable.
  • Only repositories that have had activity or have been returned in search results in the last year are searchable.
  • Except withfilename searches, you must always include at least one search term when searching source code. For example, searching forlanguage:javascript is not valid, whileamazing language:javascript is.
  • At most, search results can show two fragments from the same file, but there may be more results within the file.
  • You can't use the following wildcard characters as part of your search query:. , : ; / \ ` ' " = * ! ? # $ & + ^ | ~ < > ( ) { } [ ] @. The search will simply ignore these symbols.

Search by the file contents or file path

With thein qualifier you can restrict your search to the contents of the source code file, the file path, or both. When you omit this qualifier, only the file contents are searched.

QualifierExample
in:fileoctocat in:file matches code where "octocat" appears in the file contents.
in:pathoctocat in:path matches code where "octocat" appears in the file path.
in:file,pathoctocat in:file,path matches code where "octocat" appears in the file contents or the file path.

Search within a user's or organization's repositories

To search the code in all repositories owned by a certain user or organization, you can use theuser ororg qualifier. To search the code in a specific repository, you can use therepo qualifier.

QualifierExample
user:USERNAMEuser:defunkt extension:rb matches code from @defunkt that ends in.rb.
org:ORGNAMEorg:github extension:js matches code from GitHub that ends in.js.
repo:USERNAME/REPOSITORYrepo:mozilla/shumway extension:as matches code from @mozilla's shumway project that ends in.as.

Search by file location

You can use thepath qualifier to search for source code that appears at a specific location in a repository. Usepath:/ to search for files that are located at the root level of a repository. Or specify a directory name or the path to a directory to search for files that are located within that directory or any of its subdirectories.

QualifierExample
path:/octocat filename:readme path:/ matchesreadme files with the word "octocat" that are located at the root level of a repository.
path:DIRECTORYform path:cgi-bin language:perl matches Perl files with the word "form" in thecgi-bin directory, or in any of its subdirectories.
path:PATH/TO/DIRECTORYconsole path:app/public language:javascript matches JavaScript files with the word "console" in theapp/public directory, or in any of its subdirectories (even if they reside inapp/public/js/form-validators).

Search by language

You can search for code based on what language it's written in. Thelanguage qualifier can be the language name or alias. For a full list of supported languages with their names and aliases, see thegithub-linguist/linguist repository.

QualifierExample
language:LANGUAGEelement language:xml size:100 matches code with the word "element" that's marked as being XML and has exactly 100 bytes.
language:LANGUAGEdisplay language:scss matches code with the word "display," that's marked as being SCSS.
language:LANGUAGEorg:mozilla language:markdown matches code from all @mozilla's repositories that's marked as Markdown.

Search by file size

You can use thesize qualifier to search for source code based on the size of the file where the code exists. Thesize qualifier usesgreater than, less than, and range qualifiers to filter results based on the byte size of the file in which the code is found.

QualifierExample
size:nfunction size:>10000 language:python matches code with the word "function," written in Python, in files that are larger than 10 KB.

Search by filename

Thefilename qualifier matches code files with a certain filename. You can also find a file in a repository using the file finder. For more information, seeFinding files on GitHub.

QualifierExample
filename:FILENAMEfilename:linguist matches files named "linguist."
filename:FILENAMEfilename:.vimrc commands matches.vimrc files with the word "commands."
filename:FILENAMEfilename:test_helper path:test language:ruby matches Ruby files namedtest_helper within thetest directory.

Search by file extension

Theextension qualifier matches code files with a certain file extension.

QualifierExample
extension:EXTENSIONform path:cgi-bin extension:pm matches code with the word "form," undercgi-bin, with the.pm file extension.
extension:EXTENSIONicon size:>200000 extension:css matches files larger than 200 KB that end in .css and have the word "icon."

Further reading


[8]ページ先頭

©2009-2025 Movatter.jp