QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3778|回复: 1
打印 上一主题 下一主题

73个GitHub高级搜索技巧

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2021-7-8 14:57 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    ! @4 c. R$ _: x2 b" G: k
    73个GitHub高级搜索技巧" ^, }; Q4 ~+ C# ~
    73个GitHub高级搜索技巧$ h! ]5 o: E; i
    1. 前言
    2 S7 ~2 P* T; J$ Y2. 排序搜索结果; h( r7 q# B1 y* V
    2.1. 按交互排序. `4 `3 T  Z2 o
    2.2. 按反应排序. b6 j8 S& e$ _
    2.3. 按作者日期排序
    ( j- k' o* @* j) h9 L/ V8 Z2.4. 按提交者日期排序& L, j; V# }. D' j
    2.5. 按更新日期排序% P' x+ B# `# u  O( t  k1 B. {& `6 M
    3. 搜索范围  f! i. [7 `, v; ?- i! }5 [
    3.1. 搜索存储库
    ) ~" @3 Y1 Y; s) d* x: I2 s% P$ `3.1.1. 按存储库名称、描述或 README 文件的内容搜索$ }  z: p8 ^- e$ {; H6 e; _. T
    3.1.2. 在用户或组织的仓库中搜索
    7 u! b8 Z- ]* a: Q3.1.3. 按存储库大小搜索
    " P; e, h. Y4 b3 W% p3.1.4. 按分叉数搜索
    ; P! @/ P5 y$ x3.1.5. 按星数搜索5 c4 Q7 q/ X; l, w$ ^
    3.1.6. 按创建或上次更新存储库的时间搜索
    ! F" h; S/ W" P8 `! c: B3.1.7. 按语言搜索! {7 G5 G9 ~% G" F3 N+ @: g
    3.1.8. 按主题搜索9 r# z, \6 b! \/ K! t7 Y# M
    3.1.9. 按主题数量搜索3 j2 T/ g& I9 @
    3.1.10. 按许可证搜索
    3 l7 `. [; ?: d) D3.1.11. 按存储库可见性搜索9 o  e* F/ D5 m- b$ H# A
    3.1.12. 根据仓库是否是镜像进行搜索
    , j( p2 ~0 ^; O: x7 n8 m3.2. 搜索主题
    8 o1 S4 [: C3 C3.2.1. 使用搜索限定符缩小搜索范围
    0 O$ ~* X: U9 T8 g3.3. 搜索代码
    ) @( k' ~' r0 v3.3.1. 按文件内容或文件路径搜索' j$ \3 b' W+ |' o6 ]
    3.3.2. 在用户或组织的仓库中搜索
    9 R) K, B; ?2 L5 W! ^& V3.3.3. 按语言搜索; F% p8 C( C- c. z; V
    3.3.4. 按文件大小搜索
    ) F/ V$ H" b  F4 y3.3.5. 按文件名搜索& x) m5 f( }, h: l% c, V* N
    3.4. 搜索用户
    . Z- Z$ z4 i+ J$ O$ @9 q3.4.1. 按帐户名称、全名或公共电子邮件搜索
    3 k( d1 J! M: K, P1 r# T: P8 W! F3 P3.4.2. 按用户拥有的仓库数量搜索" M4 t( A: D. o7 [+ y5 G
    3.4.3. 按创建用户帐户的时间搜索: L: p7 B* w7 j' [% j
    3.4.4. 按关注者数量搜索4 }( f6 h3 y# K! x8 K
    1. 前言
    ! F7 ^' E% [: d* qGitHub的搜索功能绝不仅仅是单纯匹配你输入的内容,而是有如下匹配规则。
    6 n9 _/ M" U5 Y: g/ L; ]8 U( [' i& P& C# ?; f- U) f6 U+ K

    7 }* r+ M6 Q4 @, U; o. @3 T8 @本文参考自GitHub官方文档。1 ]8 h: e9 T  K' E
    GitHub官方文档:https://docs.github.com/en
    2 z7 K! d3 k) ^, }
    / A. U$ p7 r$ W

    + ?) z+ z, z  n5 ?" ^) R/ l5 I! A4 D& l6 H8 V% c

    , l+ E. \, w$ i9 ^: i, Y, f本文第3点总结了目前GitHub搜索最常用的技巧,根据我们平时搜索的内容分为了搜索存储库、搜索主题、搜索代码和搜索用户四个小点,你可以根据自己想要的搜索内容定位到每个小点,同时第2点总结了将你搜索到的结果按照什么排序顺序排序,包括交互排序、反应排序、作者日期排序、提交者日期排序、更新日期排序等。7 i! f' f  J2 n+ H/ R& L& l0 z$ K

      ], O+ F% z4 Z2 p" b" e8 {
    1 w& C) [; G3 A- b0 E
    2. 排序搜索结果8 M0 C  ^; D6 q, ~
    2.1. 按交互排序$ @7 c/ I9 ?2 M: Q
    语法        例子
    ' O4 z: y5 ~; U* Z1 V5 J( Z% @org:github sort:interactions        匹配 GitHub 拥有的存储库中的问题,按反应和评论的最高组合数排序5 I. H1 G: c1 `/ Y. r) N( L
    org:github sort:interactions-asc        匹配 GitHub 拥有的存储库中的问题,按最少的反应和评论组合数排序. b, c- h' Q- P
    2.2. 按反应排序
    1 ~) T- t+ ?/ K! N( l! t语法        例子! E$ O' m  T: v  s+ p
    org:github sort:reactions        匹配 GitHub 拥有的存储库中的问题,按最高反应数排序。
    . E. @5 D0 z; e+ \4 t8 _9 r% Sorg:github sort:reactions-asc        匹配 GitHub 拥有的存储库中的问题,按反应数量升序排序(从最少到最多)% d! j2 |/ P9 {9 o# f
    org:github sort:reactions-+1        匹配 GitHub 拥有的存储库中的问题,按最多点赞 (👍) 反应排序
    & ?/ M+ S6 b1 c/ D" S; k. D0 i5 ]+ zorg:github sort:reactions- -1        匹配 GitHub 拥有的存储库中的问题,按最多 (👎) 反应排序- s- n1 J9 X3 @% Y
    org:github sort:reactions-smile        匹配 GitHub 拥有的存储库中的问题,按最多笑 (😄) 反应排序
    4 V/ e, |& U0 H' b! W! Horg:github sort:reactions-tada        匹配 GitHub 拥有的存储库中的问题,按大多数欢呼 (🎉) 反应排序
    & B: q# K  ?/ d* I7 Y" Vorg:github sort:reactions-heart        匹配 GitHub 拥有的存储库中的问题,按大多数心脏 (❤️) 反应排序
    4 j; ^- N8 C' @- J0 O( i+ ^2.3. 按作者日期排序
      o1 ~+ e! S$ h9 _) y( m语法        例子
    - N9 N  B) I' worg:github sort:author-date feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期降序排序
    2 \' ^2 @) n* [) G" n/ jorg:github sort:author-date-asc feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期升序排序
    3 Q" ?: T+ @/ i0 w3 N; M2.4. 按提交者日期排序# ?" f% v# g% Q  ]0 }: N# M. N  R- N
    语法        例子
    $ ~* U4 V. J. t( |org:github sort:committer-date        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期降序排序6 k/ k) s" z' A' X2 p
    org:github sort:committer-date-asc        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期升序排序4 ^& V4 ~1 }+ F! D% G9 A; ?
    2.5. 按更新日期排序
    , Y; ~. ]/ ~" n+ l语法        例子; @4 N- ?4 N. Y- C) G2 |
    sort:updated feature        匹配包含“feature”一词的存储库,按最近更新日期排序, G2 F3 A) V2 d: J2 m9 i. N4 k
    sort:updated-asc feature        匹配包含单词“feature”的存储库,按最近更新日期排序
    1 J9 `' i5 p4 R% m2 i( v3. 搜索范围/ P- r6 J% P8 S; Y; D+ w3 p
    3.1. 搜索存储库
    ; N. N7 @& R, q9 L7 r3.1.1. 按存储库名称、描述或 README 文件的内容搜索1 Q7 Y. R5 I* C. u4 M; J
    语法        例子
    6 b% c3 k1 ]7 \! T( G/ A" Q( n; ein:name jquery        匹配存储库名称中带有“jquery”的存储库。. B. D4 D% d' ^
    in:description jquery        匹配存储库描述中带有“jquery”的存储库。& K% g- g+ G. `  G5 n
    in:readme jquery        匹配存储库的 README 文件中提到“jquery”的存储库。
    8 Z: m& J7 y$ r+ P% x, M3.1.2. 在用户或组织的仓库中搜索
    2 U" A4 y+ T9 _6 m3 B语法        例子
    & Z" x2 [# z6 M. l( e8 H8 Duser:defunkt forks:>100        匹配用户名为 defunkt 的具有超过 100 个 fork 的存储库。& i/ p. ~5 G/ }- z0 q; }
    3.1.3. 按存储库大小搜索
    # Q6 P' L9 o0 I% I2 U0 J6 Z: e$ C语法        例子0 V: F; V' O4 `* m+ H( K
    size:1000        匹配大小为 1 MB 的存储库
    6 Q+ H2 F! R" vsize:>=30000        匹配至少 30 MB 的存储库4 T; X! j$ j+ y6 ]( h7 R
    size:<50        匹配小于 50 KB 的存储库
    ! M" k7 G+ N, U8 N/ G# [size:50…120        匹配 50 KB 到 120 KB 之间的存储库% z. L2 Q! U3 V
    3.1.4. 按分叉数搜索
    ! c6 I' g' e+ w语法        例子
    0 M& ]7 T3 D2 Cforks:5        匹配只有五个 fork 的存储库7 }# a; ^% X3 W$ d$ J4 d, i& e: }
    forks:>=205        匹配至少有 205 个 fork 的仓库
    $ _; S* z" s6 x# P1 A) gforks:<90        匹配具有少于 90 个 fork 的存储库: c) `; x7 y+ j6 p9 ]7 N* I7 y1 m
    forks:10…20        匹配具有 10 到 20 个 fork 的存储库
    " Z' A9 _) C7 o5 E" p" w' R  z( L3.1.5. 按星数搜索; |3 i. o8 E8 ~: R% c$ d8 g5 Z3 [4 z! {
    语法        例子
    8 H' E% \0 `' U4 v6 y' gstars:500        匹配恰好有 500 颗星的存储库) x1 M5 E/ {0 u- a- l
    stars:10…20        匹配小于 1000 KB 的 10 到 20 星的存储库1 C# \1 M* W3 F4 ]) T1 ^4 t
    stars:>=500 fork:true language:php        匹配至少 500 个星的存储库,包括分叉的,用 PHP 编写的9 h* U  Y! u; z7 N2 g" B
    3.1.6. 按创建或上次更新存储库的时间搜索
    1 ^" A, e4 s- {语法        例子
    & A+ I5 f+ n  z; ?! Z/ _, ewebos created:<2011-01-01        匹配 2011 年之前创建的带有“webos”一词的存储库
    - p# V+ f) O$ [; A/ x1 fcss push:>2013-02-01        匹配 2013 年 1 月之后推送到的带有“css”一词的存储库* A8 R# Q) e/ g7 b% o
    case push:>=2013-03-06 forknly        匹配 2013 年 3 月 6 日或之后推送到的带有单词“case”的存储库,并且是分叉。
    7 q0 d. u6 f3 R! q  y) n3.1.7. 按语言搜索, a. ~* ]8 ~  n" ]8 r
    语法        例子
    ! H1 N' O# e+ R% ]4 [9 J2 Urails language:javascript        匹配使用 JavaScript 编写的带有“rails”一词的存储库
    ) b( Z& s8 p) ~; f0 K/ l; M3.1.8. 按主题搜索
    2 K# c4 \$ b2 U语法        例子* ~1 z8 S9 m5 \- N2 u# n3 U) D
    topic:jekyll        匹配已分类为主题“jekyll”的存储库" V' x# U' v; g
    3.1.9. 按主题数量搜索
    2 K% R$ U& Q0 o) S8 {+ j" w语法        例子- m  J! a$ u8 P# g* i8 ?
    topic:5        匹配具有五个主题的存储库
    3 T7 Z' X0 r* R" Z- Y4 F/ jtopic:> 3        匹配具有三个以上主题的存储库
    ) |5 v' @$ V6 Q7 Y2 z2 E7 d3.1.10. 按许可证搜索
    2 p9 a/ `! h/ Q# V& d语法        例子, r  r& A& X; Z* ^9 c/ e& T0 `2 R* m
    license:apache-2.0        匹配在 Apache License 2.0 下获得许可的存储库
    5 [2 L4 i" C) v: _, {3.1.11. 按存储库可见性搜索6 u7 a6 u9 _, p) k, ]' R
    语法        例子5 i8 x9 Y8 L  E+ ~9 e
    is:public org:github        匹配 GitHub 拥有的公共存储库
    . G. w7 ^& S5 f, i9 S0 Pis:internal test        匹配您可以访问并包含“test”一词的内部存储库0 K* ]" {" }  x3 T# c
    is:private pages        匹配您可以访问并包含“pages”一词的私有存储库& F; m2 P+ I; a$ W( D
    3.1.12. 根据仓库是否是镜像进行搜索
    ' h3 T6 i1 @* ^5 b$ b语法        例子; \& a+ w! j- X1 [! |
    mirror:true GNOME        匹配作为镜像且包含单词“GNOME”的存储库
    , j( W# p6 {  [mirror:false GNOME        匹配非镜像且包含“GNOME”一词的存储库0 |; s* a4 i+ C8 N2 r1 K+ d
    3.2. 搜索主题
    + d! ?, h! ^! N8 M3 X3.2.1. 使用搜索限定符缩小搜索范围
    ' Q9 y1 r+ [! B) @# e, z语法        例子) r% a3 ~8 L+ \* a* C+ W3 M. C! M" b, K
    is:curated javascript        匹配经过策划并包含“javascript”一词的主题0 k1 C' p4 {1 Z/ E+ }0 y- Y8 C
    is:featured javascript        匹配https://github.com/topics/上的特色主题并包含“javascript”一词, F2 i3 I- y" v+ e
    is:not-curated javascript        匹配没有额外信息(例如描述或徽标)并包含“javascript”一词的主题" k! n3 s' y0 }/ ~1 O+ s. F
    is:not-featured javascript        匹配https://github.com/topics/上没有特色且包含“javascript”一词的主题6 N. b! M8 N5 @* e
    repositories:>5000        匹配具有超过 5000 个存储库的主题
    * B  L8 b( n2 \6 Y1 Z/ z# N4 T3.3. 搜索代码
    & `+ J+ u/ j8 @0 ?序号        代码搜索的注意事项:由于搜索代码的复杂性,对搜索的执行方式有一些限制
      t# }  {5 m# l2 X1        必须登录 GitHub 上的用户帐户才能在所有公共存储库中搜索代码4 m$ X3 g8 Q& {( e, m% j8 _
    2        只有当分叉的星数多于父存储库时,分叉中的代码才可搜索。星号少于父存储库的分叉不会为代码搜索编制索引。要在搜索结果中包含星数多于父级的分叉,您需要将fork:true或添加forknly到您的查询中。有关更多信息,请参阅“在分叉中搜索”9 }1 M: n7 r4 h
    3        仅对默认分支进行索引以进行代码搜索
    ) L5 E. e1 ^1 |; ~/ x1 x/ \4        只能搜索小于 384 KB 的文。
    5 @, ~0 c# a- b; x8 \5        只能搜索少于 500,000 个文件的存储库2 k6 r2 i  Y' n, A. [! |+ w
    6        只有在去年有活动或在搜索结果中返回的存储库才可搜索
    % ?' ]6 D0 @6 U0 L0 c; r2 o7        除了filename搜索之外,在搜索源代码时,您必须始终包含至少一个搜索词。例如,搜索language:javascript无效,而搜索无效amazing language:javascript
    / q' p& L& S7 f6 G. z8        搜索结果最多可以显示来自同一个文件的两个片段,但文件中可能会有更多的结果
    # m5 T) }4 t7 ~9 w: b9        您不能在搜索查询中使用以下通配符:. , : ; / \ ` ’ " = * ! ? # $ & + ^
    - w% Q& ?+ Y7 b5 V! j3.3.1. 按文件内容或文件路径搜索& ?1 [; |. k/ d6 X: l/ e# D0 k+ c9 Y
    语法        例子
    % ~7 K% O: |4 R1 [/ f& ^octocat in:file        匹配文件内容中出现“octocat”的代码
    ) W* r( P; Q7 t+ d6 {4 roctocat in:path        匹配文件路径中出现“octocat”的代码$ {% @( {. i1 v) ~+ [6 c2 I
    3.3.2. 在用户或组织的仓库中搜索
    5 {" Y6 I5 `8 f8 p6 F语法        例子
    ; Y/ I2 {+ I$ h" q$ d: F# puser:defunkt extension:rb        匹配来自@defunkt 的以.rb结尾的代码
    9 a) _5 @2 O' G; }9 |org:github extension:js        匹配来自 GitHub 的以.js结尾的代码  }2 c) w9 g8 E
    repo:mozilla/shumway extension:as        匹配@mozilla 的 shumway 项目中以.as结尾的代码
    8 P% a- i1 ^* y. A' O$ P3.3.3. 按语言搜索
    ) L/ z: F& {0 u! X语法        例子
      S$ C9 o' E* x2 oelement language:xml size:100        匹配带有标记为 XML 且正好有 100 个字节的单词“element”的代码
    - Q1 C7 j  M0 X6 Hdisplay language:scss        匹配带有单词“display”的代码,它被标记为 SCSS
    $ C$ l! f- @& N: N% `/ `' x* I# b6 jorg:mozilla language:markdown        匹配所有@mozilla 存储库中标记为 Markdown 的代码
    8 a* U( n' r, W3 `/ F3.3.4. 按文件大小搜索# M. j% ^, ~: ^2 n
    语法        例子' o- X6 q6 g& o( z0 D  h
    function size:>10000 language:python        匹配用 Python 编写的大于 10 KB 的文件中带有“function”一词的代码
    0 m2 G) E& y& z  r: W9 h3.3.5. 按文件名搜索* k& T- p8 q% I- O
    语法        例子
    : M3 c7 p$ g& n, a# \. Bfilename:linguist        匹配名为“linguist”的文件
    " T5 J, c6 [1 |filename:.vimrc commands        匹配带有 “commands” 一词的.vimrc文件。
    3 X* g( b) W/ c+ k3.4. 搜索用户* n* I4 L/ J, q, j% A$ i
    3.4.1. 按帐户名称、全名或公共电子邮件搜索
    & Z- H& S) _  |语法        例子8 m( ~5 ]3 a6 R" N% b! n% c( ^5 `
    userctocat        匹配用户名为“octocat”的用户
    6 h' {  ?  H7 o6 p' u5 J# z0 m7 Torg:electron type:users        匹配 Electron 组织的账户名  `& h9 J3 G( f% p4 b
    kenya in:login        匹配用户名中包含“kenya”一词的用户
    " N; J' n! `& }( wbolton in:name        匹配真实姓名中包含单词“bolton”的用户& s$ n. U: R( y. P
    fullname:Nat Friedman        匹配全名“Nat Friedman”的用户。注意:此搜索限定符对间距敏感。
    ( k0 C, z0 N4 N* b2 n+ Edata in:email        将用户与电子邮件中的“data”一词匹配起来! g, a: ]- E. ?% G7 }
    3.4.2. 按用户拥有的仓库数量搜索
    * ]  N, N0 E7 l+ a" |3 L7 B0 \3 v语法        例子, X, \4 X  p9 u$ T. H6 r, J: f. J; C
    repos:>9000        匹配存储库数量超过 9,000 的用户
    % n3 u' P8 V3 \' y+ @bert repos:10…30        匹配用户名或真实姓名中包含“bert”一词且拥有 10 到 30 个存储库的用户/ Y8 a; w* z) f
    3.4.3. 按创建用户帐户的时间搜索
      r8 v* N6 d8 {0 q" x& J3 z' t$ I语法        例子1 x# `. w  W5 Q8 z3 N2 Q7 _: O
    created:<2011-01-01        匹配 2011 年之前加入的用户8 U* k9 }7 p4 X/ ?" t! ]; s
    created:>=2013-05-11        匹配在 2013 年 5 月 11 日或之后加入的用户0 d2 E6 z4 P' g: S* S
    created:2013-03-06 location:london        匹配于 2013 年 3 月 6 日加入且将其位置列为伦敦的用户
    $ j8 m! E. Y. M7 h2 y: ccreated:2010-01-01…2011-01-01 john in:login        匹配在 2010 年到 2011 年之间加入且用户名中包含单词“john”的用户6 j, W' @8 y$ L
    3.4.4. 按关注者数量搜索
    3 o/ C! J  N" }) I4 q8 k' n& |语法        例子2 P( S+ t" l3 x2 f) ^
    followers:>=1000        匹配拥有 1,000 或更多关注者的用户
    8 ]: F* A9 S; l" N5 M" P9 R  isparkle follower:1…10        匹配拥有 1 到 10 个关注者的用户,他们的名字中带有“sparkle”这个词% m$ f# \2 p% [7 z/ ]& A$ K
    ————————————————9 E* B9 d" M) U" X
    版权声明:本文为CSDN博主「Jack·Kwok」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    7 W0 [2 x) R& w( g6 _* S4 w- \3 ^原文链接:https://blog.csdn.net/PaperJack/article/details/118543980
    + _% f5 c% p5 ?2 l; Z
      U# c6 B; ]9 g# H' |
    4 m! R  j+ ]4 A& ]" f/ N0 n( u
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    0

    主题

    10

    听众

    299

    积分

    升级  99.5%

  • TA的每日心情
    开心
    2023-10-14 10:28
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-8-26 07:50 , Processed in 0.401734 second(s), 55 queries .

    回顶部