天天看點

你會在 GitHub 上面找項目嗎

很多的小夥伴,經常會有這樣的困惑,我看了很多技術的學習文檔、書籍、甚至視訊,我想動手實踐,于是我打開了GitHub,想找個開源項目,進行學習,擷取項目實戰經驗。這個時候很多小夥伴就會面臨這樣的問題:“我不會搜啊,我該怎麼找呀?”,最終隻能放棄。

這篇文章,小編教你精準地在GitHub搜尋項目。

開源項目的組成部分

在講清楚之前呢,我們先來了解一下一個開源項目有哪些組成部分:

  • name: 項目名
  • description: 項目的簡要描述
  • 項目的源碼
  • README.md: 項目的詳細情況的介紹

那麼除了這些要素之外,項目本身的star數和fork數,也是評判一個開源項目是否火熱的标準,這同時也是一個很重要的搜尋标準。另外我們也要注意觀察這個項目的最近更新日期,因為項目越活躍,那麼它的更新日期也更加頻繁。以上要素就是我們在進行搜尋的時候要注意的一些關鍵點。

如何搜尋

那我們到底如何搜尋呢?假設我們現在要搜尋React,相信大部分小夥伴都是直接在搜尋框裡輸入:“React”,然後一回車,你就會發現情況像下面這樣:

你會在 GitHub 上面找項目嗎

搜尋結果會顯示非常多的開源項目,簡直讓你應接不暇,無從下手,很多小夥伴搜到這一步就放棄了,因為項目太多了,根本找不到如何找到自己感興趣的開源項目,是以這樣搜尋非常的不準确。是以我們來學習一下稍微精确一點的搜尋方法。

按照 name 搜尋

搜尋項目名裡面包含React的項目:

in:name React      

得到如下結果:

你會在 GitHub 上面找項目嗎

可以看到,這些搜尋結果都是項目名裡面帶有“React”關鍵字的項目,但是項目數量依舊很多。現在我們來限制一下比如我再精确到項目的star數大于5000+:

in:name React stars:>5000      

結果是這樣的:

你會在 GitHub 上面找項目嗎

搜尋結果瞬間精确了很多,現在隻有114個項目可供選擇。當然我們一般不會把star數設定得這麼高,一般設定個1000就差不多了。同理,我們也可以按照fork的數量來進行搜尋:

in:name React stars:>5000 forks:>3000      
你會在 GitHub 上面找項目嗎

你會發現,結果越來越精确!

按照README來搜尋

搜尋README.md裡面包含React的項目:

in:readme React      
你會在 GitHub 上面找項目嗎

結果有這麼多,那麼我們再限制一下它的star數和fork數:

in:readme React stars:>3000 forks:>3000      
你會在 GitHub 上面找項目嗎

搜尋結果一下子精确到了90個。這個時候你再去選擇項目,就會變得容易很多。

按照descriptin搜尋

假設我們現在要學習微服務的項目,我們搜尋項目描述(description)裡面包含微服務的項目:

in:description 微服務      
你會在 GitHub 上面找項目嗎

結果有這麼多,那我們接着增加一些篩選條件:

in:description 微服務 language:python      

language:python的意思是我們把語言限制為python,我們來看看結果如何:

你會在 GitHub 上面找項目嗎

搜尋結果精确了很多。假如在這些項目裡面,我們想要找到最近才更新的項目,意思是更新時間就在最近,我們可以這樣:

in:description 微服務 language:python pushed:>2020-01-01      

pushed:>2020-01-01的意思是我們把項目的最後更新時間限制到2020-01-01,我們來看看結果如何:

你會在 GitHub 上面找項目嗎

搜尋結果隻有8個了,這幾個項目就屬于更新比較活躍的項目,這下再也不糾結了。

總結

好,我們來總結一下。我們想要進行精準搜尋,無非就是增加篩選條件。

  • in:name xxx // 按照項目名搜尋
  • in:readme xxx // 按照README搜尋
  • in:description xxx // 按照description搜尋
  • stars:>xxx // stars數大于xxx
  • forks:>3000 // forks數大于xxx
  • language:xxx // 程式設計語言是xxx
  • pushed:>YYYY-MM-DD // 最後更新時間大于YYYY-MM-DD

繼續閱讀