前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >github代码搜索技巧

github代码搜索技巧

作者头像
我是攻城师
发布2018-05-11 16:41:48
1.5K1
发布2018-05-11 16:41:48
举报
文章被收录于专栏:我是攻城师我是攻城师

github是一个非常丰富的资源,但是面对这丰富的资源很多人不知到怎么使用,更谈不上怎么贡献给他,我们需要使用github就要学习使用他的方法,学会了使用的方法,接受了他的这种观点我们才会慢慢的给他贡献自己的力量,这是我自己在学习的时候的一个笔记。现在分享给大家希望能够对一些人有帮助。

Search / Searching code

github搜索之代码搜索

Searching code

代码搜索

To search for code, use the following search qualifiers in any combination.

Tip: There's a list of search syntaxes you can add to any search qualifier to further improve your results.

Considerations for code search

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

  • Only the default branch is considered. In most cases, this will be the master branch.
  • Only files smaller than 384 KB are searchable.
  • You must always include at least one search term when searching source code. For example, searching for language:go is not valid, while amazing language:go 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.

以上是代码搜索中需要注意的一些问题

默认搜索是从master分支搜索代码

只有小于384k的代码才是可以搜索到的

搜索的时候必须包含至少一个搜索关键词 如 amazing language:go

搜索语句不能有特殊字符如. , : ; / \ ` ' " = * ! ? # $ & + ^ | ~ < > ( ) { } [ ].

Scope the search fields

指定搜索方式

  • octocat in:file
  • Matches code where "octocat" appears in the file contents.
  • 搜索文件中有octocat的代码
  • octocat in:path
  • Matches code where "octocat" appears in the path name.
  • 搜索路径中有octocat的代码
  • octocat in:file,path
  • Matches code where "octocat" appears in the file contents or the path name.
  • 搜索路径中有octocat的代码或者文件中有octocat的代码
  • display language:scss
  • Matches code with the word "display," that's marked as being SCSS.
  • 搜索用scss写的包含display的代码
  • Integer
  • Matches code with the word "Integer".
  • 搜索包含Integer的字段

Search by language

通过语言搜索代码

You can search for code based on what language it's written in. For example:

  • element language:xml size:100
  • Matches code with the word "element" that's marked as being XML and has exactly 100 bytes.
  • 搜索大小为100字节的xml代码
  • user:mozilla language:markdown
  • Matches code from all @mozilla's repositories that's marked as Markdown.
  • 搜索mozilla用户下用markdown写的代码

Search by the number of forks the parent repository has

通过fork的数量或者是否有父节点的方式搜索

If you would like forked results to appear, add the fork:true qualifier. For example:

  • android language:java fork:true
  • Matches code in a forked repository with the word "android" that's written in Java.
  • 搜索用java写的 android相关的代码并且被fork过

The size qualifier filters results based on the size of the file in which the code is found. For example:

  • function size:>10000 language:python
  • Matches code with the word "function," written in Python, in files that are larger than 10 KB.
  • 搜索与function相关的python代码,文件大小超过10kb

Search by the location of a file within the repository

按照目录结构搜索

By including the path qualifier, you specify that resulting source code must appear at a specific location in a repository. Subfolders are considered during the search, so be as specific as possible. For example:

  • console path:app/public language:javascript
  • Finds JavaScript files with the word "console" in an app/public directory (even if they reside inapp/public/js/form-validators).
  • app/public directory目录下搜索console关键字
  • form path:cgi-bin language:perl
  • Finds Perl files under cgi-bin with the word "form" in them.
  • 搜索cgi-bin目录下包含form的perl代码

Search by filename

通过文件名搜索

You can use the filename qualifier if there's a specific file you're looking for. For example:

  • filename:.vimrc commands
  • Finds *.vimrc* files with the word "commands" in them.
  • 搜索 文件名匹配*.vimrc* 并且包含commands的代码
  • minitest filename:test_helper path:test language:ruby
  • Finds Ruby files containing the word "minitest" named *test_helper* within the *test* directory.
  • 在test目录中搜索包含minitest且文件名匹配"*test_helper*"的代码

Search by the file extension

根据扩展名来搜索代码

The extension qualifier matches code files with a certain extension. For example:

  • form path:cgi-bin extension:pm
  • Matches code with the word "form," under cgi-bin, with the .pm extension.
  • 搜索cgi-bin目录下以pm为扩展名的代码
  • icon size:>200000 extension:css
  • Finds files larger than 200 KB that end in .css and have the word "icon" in them.
  • 搜索超过200kb包含icon的css代码

Search within a user's or organization's repositories

通过用户或者组织来查找

To grab a list of code from all repositories owned by a certain user or organization, you can use the usersyntax. For getting a list of code from a specific repository, you can use the repo syntax. For example:

  • user:github extension:rb
  • Matches code from GitHub that ends in .rb.
  • 查找github用户中以rb为扩展的代码
  • repo:mozilla/shumway extension:as
  • Matches code from @mozilla's shumway project that ends in .as.
  • 搜索mozilla的shumway以as为扩展的代码

搜索结果可以根据需要排序网站上提供了排序的选项,更多搜索需求可以选择高级搜索

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2014-12-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 我是攻城师 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Search / Searching code
  • Searching code
    • Considerations for code search
      • Scope the search fields
        • Search by language
          • Search by the number of forks the parent repository has
            • Search by the location of a file within the repository
              • Search by filename
                • Search by the file extension
                  • Search within a user's or organization's repositories
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档