歡迎訪問我的GitHub
https://github.com/zq2599/blog_demos
內容:所有原創文章分類匯總及配套源碼,涉及Java、Docker、Kubernetes、DevOPS等;
關於搜索
- 對自己而言,這是篇遲來的重要的筆記,github是寶庫,搜索方法不當可能與珍貴的代碼擦肩而過,於是將常用搜索方法分類總結以備不時之需;
- 個人常用搜索方法總的來說分為作者和內容兩種,按照自己的習慣做了簡單分類,如下圖:
- 雖然搜索更常用,但是本着先易后難的原則,先從作者搜索開始;
作者搜索
- 如下圖紅框,github帳號可以設置自己的fullname,我們可以通過這個字段精確搜索到個人:
- 在網頁左上角輸入fullname:程序員欣宸就可以搜索到這個作者,如下圖:
- 很多github帳號會設置自己的地址,如下圖紅框,這些也可以作為找人的條件:
- 例如搜索tom,會有很多同名的:
- 如果咱們知道要找的tom在深圳,就可以大幅度縮小搜索范圍,關鍵字是fullname:tom location:shenzhen,只有22個結果:
- 以上就是搜索用戶的操作,接下來是更常用的內容搜素;
內容搜索概覽
- 搜索內容時的參數略多,按照使用習慣,我這簡單分為三類:
- 精確:格式是language:完整關鍵詞,如language:java
- 模糊:類似字符串的模糊匹配,格式是in:條件名 關鍵詞,如in:name spring-boot
- 范圍:和量化范圍有關的,格式是條件名:>數量,常和其他條件一起使用,如in:name spring-boot stars:>10000
- 接下來細說上述三類搜索;
精確
- 最常用的精確搜索就是指定語言類型了,先看不指定語言類型時,搜索斷點續傳的結果如下圖,各種語言都有:
- 如果只要java語言的,用斷點續傳 language:java去搜,結果如下圖:
模糊
-
模糊是鎖定內容的關鍵,常用的有三種條件:name(項目名稱)、description(項目描述)、readme(倉庫中的READ.md文件)
-
通過項目名稱搜索,如名稱中有spring和boot兩個關鍵詞的項目,搜索條件是in:name spring boot
- 通過項目描述搜索,這個是我自己用的最多的方式,例如我想找到現成的斷點續傳代碼,java版的,搜索條件是in:description 斷點續傳 language:java
- 通過倉庫中的README.md的內容搜索也很常用,這里面通常會有詳細的文檔信息,例如我想grpc的server端代碼,java版,搜索條件是in:readme grpc server language:java
- 例如我想找kubernetes進階實戰相關的內容,搜索條件是in:readme kubernetes進階實戰,結果如下,紅框中是欣宸自己的倉庫,里面有關鍵字kubernetes進階實戰,查得...挺准的:
范圍
- 如果用前面手段搜索的內容太多,還可以指定范圍,常用的類型有:stars(star數)、forks(fork數)、pushed(最后提交時間)、size(文件大小)
- 搜索名稱中有spring-boot且star數大於一萬的項目,in:name spring-boot stars:>10000
- 搜索名稱中有spring-boot且fork數大於一萬的項目,in:name spring-boot forks:>10000
- 搜索名稱中有spring-boot且2021年3月12日之后更新過的項目in:name spring-boot pushed:>2021-03-12
- 搜索名稱中有spring-boot且內容大於100k的項目in:name spring-boot size:>100,注意這個數字的默認單位是k:
排序
- 搜索出結果后,還可以對結果排序進行調整,操作位置如下圖紅框:
把上圖紅框中的每個排序類型列出來:
名稱 | 意義 |
---|---|
Best match | 關鍵詞匹配程度 |
Most stars | 最多star |
Fewest stars | 最少star |
Most forks | 最多fork |
Fewest forks | 最少fork |
Recently updated | 最近更新 |
Least recently updateed | 更新時間距今最久遠 |
- 以上就是我的github搜索技巧小結了,希望能給您一些參考,更高效的發掘github寶藏;
你不孤單,欣宸原創一路相伴
歡迎關注公眾號:程序員欣宸
微信搜索「程序員欣宸」,我是欣宸,期待與您一同暢游Java世界...
https://github.com/zq2599/blog_demos