github 項目搜索技巧-讓你更高效精準地搜索項目

github 搜索技巧

參考自 B站 up 主 CodeSheep 的視頻【如何高效地在網上找開源項目作!在職程序員實際演示一波視頻教程操做】,而後寫着寫着一好奇就去看文檔了php

如今這篇博客至關於官方文檔的翻譯版😂css

固然,你也能夠去看【官方文檔】體驗原汁原味的教程java

幹啥的?至關於給搜索結果添加過濾條件,看下下面的案例你就知道啦,過濾 github 的搜索結果,更精確搜索項目python

案例

普通搜

關鍵詞:pythonreact

搭配技巧搜

搜索 github 中,項目描述(description)中有 python 而且 2019-12-20 號以後有更新過的項目git

in:description python pushed:>2019-12-20程序員

效果:加了限制條件後,查出來的項目數有了明顯的減小github

限定詞

可經過指定 倉庫名(repository name)、項目描述(description)、內容(contents)、說明文件(readme.md) 來搜索項目web

限定詞 案例
in:name in:name python 查出倉庫名中有 python 的項目(python in:name 也是同樣的)
in:description in:name,description python 查出倉庫名或者項目描述中有 python 的項目
in:readme in:readme python 查出 readme.md 文件裏有 python 的項目
repo:owner/name repo:octocat/hello-world 查出 octocat 的 hello-world 項目(指定了某我的的某個項目)

其餘騷操做?本身看官方文檔(感受用不到,就不整理了吧):【找倉庫中的某個文件】、【在 github 上查找代碼片斷

查找某個用戶或組織的項目

限定詞 案例
user:USERNAME user:1335951413 stars:<10 查出用戶 1335951413 名下 stars 少於 10 的項目
org:ORGNAME org:github 查出 github 名下的項目

輔助限定詞

能夠經過限制 項目大小(size)、擁護者數(followers)、fork數(forks)、stars數(stars)、建立時間(created)、更新時間(pushed)、項目所用語言(language)、topic標籤(topic)、topic標籤數(topics)... 來篩選項目

輔助限定詞能夠多個並用,用空格隔開就行,能夠搭配限定詞使用,也可單獨使用

(關於項目是否被 fork 這個點我不是很懂,就不寫案例了)

  • in:name python size:<=1000 查出項目名字中有 python 且小於 1MB 的項目

  • size:<=1000 查出項目大小小於 1MB 的項目

限定詞 案例
stars:n stars:>=5 查出 star數大於等於 5 個 的項目(支持大於小於區間等)
pushed:YYYY-MM-DD css pushed:>2013-02-01 查出倉庫中包含 css 關鍵字,而且在 2013年1月 以後更新過的項目
language:LANGUAGE rails language:javascript 查出倉庫包含 rails 關鍵字,而且使用 javscript 語言的項目
created:YYYY-MM-DD webos created:<2011-01-01 查出倉庫中包含 webos 關鍵字而且是在 2011 年以前建立的項目(也支持時分秒,支持大於小於區間等)
size:n size:1000 查出倉庫大小等於 1MB 的項目
size:>=30000 查出倉庫大小至少大於 30MB 的項目
size:50..120 查出倉庫大小在 50KB 至 120KB 之間的項目
followers:n followers:1000 查出有 1000 個擁護者(followers) 的項目(支持大於小於區間等)
forks:n forks:5 查出有 5 個 forks 的項目(支持大於小於區間等)
topic:TOPIC topic:jekyll 查出含有 jekyll 這個 topic 的項目(項目描述下面的東西,至關於標籤、分類)
topics:n topics:>5 查出有 5 個以上 topic 的項目(支持大於小於區間等)
archived:true/false archived:true GNOME 查出已經封存了而且含有 GNOME 關鍵字的項目(已經再也不維護了的項目)
is:public/private is:public org:github 查出倉庫全部組織是 github 而且公開的項目
is:private github 查出含有 github 關鍵字而且是私有的項目(私有的別人看不到,因此這個是用來搜索本身的私有項目的)
license:LICENSE_KEYWORD license:apache-2.0 查出倉庫的開源協議是 apache-2.0 的

還沒搞懂的(關於 forks、mirror、issues)

  • stars:>=500 fork:true language:php matches repositories with the at least 500 stars, including forked ones, that are written in PHP.

  • 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.
  • mirror:true GNOME matches repositories that are mirrors and contain the word "GNOME." 查出是鏡像而且包含 GNOME 關鍵字的項目(github 上 mirror 啥意思不太懂)
  • mirror:false GNOME matches repositories that are not mirrors and contain the word "GNOME."
  • good-first-issues:>2 javascript matches repositories with more than two issues labeled good-first-issue and that contain the word "javascript."
  • help-wanted-issues:>4 react matches repositories with more than four issues labeled help-wanted and that contain the word "React."

排序(放的是官網的連接)

推薦直接在頁面上的搜索結果點擊排序,何須再去學一手呢?

官網文檔:【給你的查詢結果排序

使用指南

本身靈活的使用限定詞和輔助限定詞寫出一套規則便可查出你想要的項目

他們的位置前後、數量都無所謂,加上只是多了一個條件

練習案例

經常使用到的其實有就是這些,上面的仍是太多了,你有那個需求,又找不到方式的時候能夠查查看

# 項目名字(name)裏有 python 的
in:name python

# 名字(name)裏有 python 的而且 stars 大於 3000 的
in:name python starts:>3000

# 名字(name)裏有 python 的而且 stars 大於 3000 、forks 大於 200 的
in:name python starts:>3000 forks:>200


# 詳情(readme)裏面有 python 的而且 stars 大於 3000 的
in:readme python starts:>3000

# 描述(description)裏面有 python 的而且 stars 大於 3000 的
in:description python starts:>3000

# 描述(description)裏面有 python 的而且是 python 語言的
in:description python language:python

# 描述(description)裏面有 python 的而且 2019-12-20 號以後有更新過的
in:description python pushed:>2019-12-20
相關文章
相關標籤/搜索