git搜索技巧

来源:https://www.cnblogs.com/liuyupen/archive/2020/03/23/12549627.html
-Advertisement-
Play Games

很多的小伙伴,經常會有這樣的困惑,我看了很多技術的學習文檔、書籍、甚至視頻,我想動手實踐,於是我打開了GitHub,想找個開源項目,進行學習,獲取項目實戰經驗。這個時候很多小伙伴就會面臨這樣的問題:“我不會搜啊,我該怎麼找呀?”,最終只能放棄。相信看完這篇文章,你就可以學會如何精準地在GitHub搜 ...


很多的小伙伴,經常會有這樣的困惑,我看了很多技術的學習文檔、書籍、甚至視頻,我想動手實踐,於是我打開了GitHub,想找個開源項目,進行學習,獲取項目實戰經驗。這個時候很多小伙伴就會面臨這樣的問題:“我不會搜啊,我該怎麼找呀?”,最終只能放棄。相信看完這篇文章,你就可以學會如何精準地在GitHub搜索項目。

開源項目的組成部分

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

  • name: 項目名
  • description: 項目的簡要描述
  • 項目的源碼
  • README.md: 項目的詳細情況的介紹
    那麼除了這些要素之外,項目本身的star數和fork數,也是評判一個開源項目是否火熱的標準,這同時也是一個很重要的搜索標準。另外我們也要註意觀察這個項目的最近更新日期,因為項目越活躍,那麼它的更新日期也更加頻繁。

以上要素就是我們在進行搜索的時候要註意的一些關鍵點。

如何搜索

那我們到底如何搜索呢?

假設我們現在要搜索React,相信大部分小伙伴都是直接在搜索框里輸入:“React”,然後一回車,你就會發現情況像下麵這樣:
8oMZqJ.png
搜索結果會顯示非常多的開源項目,簡直讓你應接不暇,無從下手,很多小伙伴搜到這一步就放棄了,因為項目太多了,根本找不到如何找到自己感興趣的開源項目,所以這樣搜索非常的不准確。所以我們來學習一下稍微精確一點的搜索方法。

按照 name 搜索

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

in:name React複製代碼
得到如下結果:
UTOOLS1584891516922.png
可以看到,這些搜索結果都是項目名裡面帶有“React”關鍵字的項目,但是項目數量依舊很多。

現在我們來約束一下

比如我再精確到項目的star數大於5000+:

in:name React stars:>5000複製代碼
結果是這樣的:

UTOOLS1584891643959.png

搜索結果瞬間精確了很多,現在只有114個項目可供選擇。當然我們一般不會把star數設置得這麼高,一般設置個1000就差不多了。

同理,我們也可以按照fork的數量來進行搜索:

in:name React stars:>5000 forks:>3000複製代碼

你會發現,結果越來越精確!
UTOOLS1584891693749.png

按照README來搜索

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

in:readme React複製代碼
UTOOLS1584891790664.png
結果有這麼多,那麼我們再限制一下它的star數和fork數:

in:readme React stars:>3000 forks:>3000複製代碼
UTOOLS1584891871411.png
搜索結果一下子精確到了90個。這個時候你再去選擇項目,就會變得容易很多。

按照descriptin搜索

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

in:description 微服務複製代碼
UTOOLS1584891909535.png
結果有這麼多,那我們接著增加一些篩選條件:

in:description 微服務 language:python 複製代碼
language:python的意思是我們把語言限製為python,我們來看看結果如何:
UTOOLS1584891970459.png
搜索結果精確了很多。

假如在這些項目裡面,我們想要找到最近才更新的項目,意思是更新時間就在最近,我們可以這樣:

in:description 微服務 language:python pushed:>2020-01-01複製代碼
pushed:>2020-01-01的意思是我們把項目的最後更新時間限制到2020-01-01,我們來看看結果如何:
UTOOLS1584891999483.png
搜索結果只有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
以上就是我們在GitHub上面精準搜索項目的一些小技巧,希望對你有所幫助!

本文由博客一文多發平臺 OpenWrite 發佈!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文主要介紹 Elasticsearch 的聚合功能,介紹什麼是 Bucket 和 Metric 聚合,以及如何實現嵌套的聚合。 首先來看下聚合(Aggregation): 什麼是 Aggregation? 首先舉一個生活中的例子,這個是京東的搜索界面,在搜索框中輸入“華為”進行搜索,就會得到如上界 ...
  • 本文內容: 什麼是表單? 如何創建一個表單: 接收並驗證: PHP和資料庫交互 1,什麼是表單? 表單在網頁中主要負責數據採集。 表單由三部分組成: 表單標簽:這裡麵包含了處理表單數據所用動態腳本的URL,以及數據提交到伺服器的方法。 表單域:包含了文本框、密碼框、隱藏域、多行文本、覆選框、下拉選擇 ...
  • RDD介紹 1.RDD概念以及特性 RDD(Resilient Distributed Dataset)叫做彈性分散式數據集,是Spark中最基本的數據抽象,它代表一個不可變、可分區、裡面的元素可並行計算的集合。RDD具有數據流模型的特點:自動容錯、位置感知性調度和可伸縮性。RDD允許用戶在執行多個 ...
  • 使用SpringBoot初始化項目,集成測試遠程連接的Redis服務,並記錄了五大基本數據類型,在jedis中的體現方式。 ...
  • 對於資料庫,優化查詢的方法 1.使用索引 使用索引時,應儘量避免全表掃描,首先應考慮在 where 及 order by ,group by 涉及的列上建立索引。 2.優化SQL語句 1)分析查詢語句:通過對查詢語句的分析,可以瞭解查詢語句執行情況,找出查詢語句執行的瓶頸,從而優化查詢語句。 通過e ...
  • 帶著問題去思考,大家好! 前幾天瞭解到EF Core的開發模式:DB First(資料庫優先),Model First(模式優先),Code First(代碼優先)。 我所接觸的大多是DB First。如果大家瞭解的話,有些開源後臺項目,基本都會有後兩者,因為方便大家更快的去使用部署起來後臺。 在建 ...
  • 本文基於mysql 8.0,官方手冊: ,同時參考了 "mysql鎖機制詳解" 主要內容如下: 1. 共用鎖和排他鎖(Shared and Exclusive Locks) 2. 意向鎖(Intention Locks) 3. 記錄鎖(Record Locks) 4. 間隙鎖(Gap Locks) ...
  • 關於刪庫跑路的事故現在已經屢見不鮮了,數據備份的必要性是企業數據管理極其重要的一項工作。關於數據備份、恢復也有很多場景及方法,本系列也會將主要的幾種工具通過案例進行演示。 本系列將從邏輯備份及恢復開始講起,邏輯備份的工具主要有mysqldump/mydumper等其中mydumper可以指定多線程工 ...
一周排行
    -Advertisement-
    Play Games
  • Timer是什麼 Timer 是一種用於創建定期粒度行為的機制。 與標準的 .NET System.Threading.Timer 類相似,Orleans 的 Timer 允許在一段時間後執行特定的操作,或者在特定的時間間隔內重覆執行操作。 它在分散式系統中具有重要作用,特別是在處理需要周期性執行的 ...
  • 前言 相信很多做WPF開發的小伙伴都遇到過表格類的需求,雖然現有的Grid控制項也能實現,但是使用起來的體驗感並不好,比如要實現一個Excel中的表格效果,估計你能想到的第一個方法就是套Border控制項,用這種方法你需要控制每個Border的邊框,並且在一堆Bordr中找到Grid.Row,Grid. ...
  • .NET C#程式啟動閃退,目錄導致的問題 這是第2次踩這個坑了,很小的編程細節,容易忽略,所以寫個博客,分享給大家。 1.第一次坑:是windows 系統把程式運行成服務,找不到配置文件,原因是以服務運行它的工作目錄是在C:\Windows\System32 2.本次坑:WPF桌面程式通過註冊表設 ...
  • 在分散式系統中,數據的持久化是至關重要的一環。 Orleans 7 引入了強大的持久化功能,使得在分散式環境下管理數據變得更加輕鬆和可靠。 本文將介紹什麼是 Orleans 7 的持久化,如何設置它以及相應的代碼示例。 什麼是 Orleans 7 的持久化? Orleans 7 的持久化是指將 Or ...
  • 前言 .NET Feature Management 是一個用於管理應用程式功能的庫,它可以幫助開發人員在應用程式中輕鬆地添加、移除和管理功能。使用 Feature Management,開發人員可以根據不同用戶、環境或其他條件來動態地控制應用程式中的功能。這使得開發人員可以更靈活地管理應用程式的功 ...
  • 在 WPF 應用程式中,拖放操作是實現用戶交互的重要組成部分。通過拖放操作,用戶可以輕鬆地將數據從一個位置移動到另一個位置,或者將控制項從一個容器移動到另一個容器。然而,WPF 中預設的拖放操作可能並不是那麼好用。為瞭解決這個問題,我們可以自定義一個 Panel 來實現更簡單的拖拽操作。 自定義 Pa ...
  • 在實際使用中,由於涉及到不同編程語言之間互相調用,導致C++ 中的OpenCV與C#中的OpenCvSharp 圖像數據在不同編程語言之間難以有效傳遞。在本文中我們將結合OpenCvSharp源碼實現原理,探究兩種數據之間的通信方式。 ...
  • 一、前言 這是一篇搭建許可權管理系統的系列文章。 隨著網路的發展,信息安全對應任何企業來說都越發的重要,而本系列文章將和大家一起一步一步搭建一個全新的許可權管理系統。 說明:由於搭建一個全新的項目過於繁瑣,所有作者將挑選核心代碼和核心思路進行分享。 二、技術選擇 三、開始設計 1、自主搭建vue前端和. ...
  • Csharper中的表達式樹 這節課來瞭解一下表示式樹是什麼? 在C#中,表達式樹是一種數據結構,它可以表示一些代碼塊,如Lambda表達式或查詢表達式。表達式樹使你能夠查看和操作數據,就像你可以查看和操作代碼一樣。它們通常用於創建動態查詢和解析表達式。 一、認識表達式樹 為什麼要這樣說?它和委托有 ...
  • 在使用Django等框架來操作MySQL時,實際上底層還是通過Python來操作的,首先需要安裝一個驅動程式,在Python3中,驅動程式有多種選擇,比如有pymysql以及mysqlclient等。使用pip命令安裝mysqlclient失敗應如何解決? 安裝的python版本說明 機器同時安裝了 ...