QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3710|回复: 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

    " r" G& G# D; C. N73个GitHub高级搜索技巧
    " I; Q# T2 R* E: o) r73个GitHub高级搜索技巧
    0 _2 d3 ?7 R4 Q% f4 Z1. 前言- Q! o# Z! C# C3 Y% k1 P
    2. 排序搜索结果
    9 M9 W% [# h, k) ~9 A# |2.1. 按交互排序- J1 d4 Q, \: G, i
    2.2. 按反应排序
    ! Y: `" ?9 a2 U! [0 b# y& V2.3. 按作者日期排序
    7 O3 x( P8 r. h8 H8 Q, z, ?2.4. 按提交者日期排序! f$ ?/ d! i0 F% Q6 O3 q9 M
    2.5. 按更新日期排序& I1 i# H1 v: a; S& W# ~' w
    3. 搜索范围- j4 T$ A; v% P
    3.1. 搜索存储库
    2 l* _4 R& ]8 a* g3.1.1. 按存储库名称、描述或 README 文件的内容搜索& C$ @, H! L" F; J
    3.1.2. 在用户或组织的仓库中搜索
    3 J7 `+ f4 `7 p& E* I7 L2 {0 h3.1.3. 按存储库大小搜索
    4 A+ g3 h$ i. B3.1.4. 按分叉数搜索; _' ~9 H  a( H3 q
    3.1.5. 按星数搜索5 H' r1 Z& y: b! G. h3 z
    3.1.6. 按创建或上次更新存储库的时间搜索
    . s! ?6 a. w- p1 D( X4 O: D3.1.7. 按语言搜索. z1 q7 {6 ^3 }1 k' X4 C3 S4 h7 s
    3.1.8. 按主题搜索0 E  N# q( T& v+ H: B
    3.1.9. 按主题数量搜索$ D% d5 h8 c; R. S
    3.1.10. 按许可证搜索
    9 q5 L+ U# G7 n3 O3.1.11. 按存储库可见性搜索
    " n: l% u  n. r" D8 `/ U' v, W' H3.1.12. 根据仓库是否是镜像进行搜索, Z  \* f; U3 L% r% ?0 v
    3.2. 搜索主题
    : @; E: L) p( y" M3.2.1. 使用搜索限定符缩小搜索范围
    9 k4 s7 m& Q" b$ k* X+ e% `! L) c6 g3.3. 搜索代码; ~. v" ~( |$ S6 p, Z
    3.3.1. 按文件内容或文件路径搜索
    $ e5 {# j/ }: r/ r3 `3.3.2. 在用户或组织的仓库中搜索
    ! Y( k& Q+ ]) Y, K2 I3.3.3. 按语言搜索% Y% ^; t! i- ]8 M
    3.3.4. 按文件大小搜索
    4 c( z9 o+ V, s, `1 C3.3.5. 按文件名搜索
    7 k+ x: {! T: @$ D5 y3.4. 搜索用户
    ; h) D: `: `+ S2 q  h7 J+ z8 r3.4.1. 按帐户名称、全名或公共电子邮件搜索& u, r# i- ^$ q  E. b8 o7 z
    3.4.2. 按用户拥有的仓库数量搜索
    1 {% B. J- @& M* r; _& x3.4.3. 按创建用户帐户的时间搜索3 k5 @' H6 G! y3 }
    3.4.4. 按关注者数量搜索
    ( ^& d( O" d+ j1. 前言
    + O1 Z% X5 E6 d" sGitHub的搜索功能绝不仅仅是单纯匹配你输入的内容,而是有如下匹配规则。
    * ]( }1 ], u7 ]" |5 [0 s2 L) O2 u1 Q& v6 T' }* o

      Z8 a* F: Q9 O5 Z+ e, ?本文参考自GitHub官方文档。, [4 @4 t2 y4 D7 g
    GitHub官方文档:https://docs.github.com/en7 J) D' N( l9 `
    : E& M/ s% r& S- x1 F
    7 N+ G: q9 w4 s, G
    & ]6 Z- K4 g0 `4 [. G
    + x8 s* p% b/ t& d5 s: g
    本文第3点总结了目前GitHub搜索最常用的技巧,根据我们平时搜索的内容分为了搜索存储库、搜索主题、搜索代码和搜索用户四个小点,你可以根据自己想要的搜索内容定位到每个小点,同时第2点总结了将你搜索到的结果按照什么排序顺序排序,包括交互排序、反应排序、作者日期排序、提交者日期排序、更新日期排序等。
    ' ]' V6 D) Y  R6 U- [( o6 A6 W/ _( @1 e. ~- f/ |: W( |" @

    $ W8 s8 O8 c* I" h! {& z, H* b2. 排序搜索结果# e  m  Y, W/ w9 k; _6 }" h
    2.1. 按交互排序
    ) K& F! s8 i) V* |' S' D6 ]语法        例子
    3 p$ s7 H3 F  [$ Q2 A% y7 ^6 p3 Yorg:github sort:interactions        匹配 GitHub 拥有的存储库中的问题,按反应和评论的最高组合数排序
    / `* R; g, p7 g& y* \$ p. {1 worg:github sort:interactions-asc        匹配 GitHub 拥有的存储库中的问题,按最少的反应和评论组合数排序
    ' {1 q& Z0 e6 o* m/ `6 e; T2.2. 按反应排序) Y7 m, w# p- z6 ]
    语法        例子
    , E$ U4 h- l4 ~' M" c% U& worg:github sort:reactions        匹配 GitHub 拥有的存储库中的问题,按最高反应数排序。
    1 E0 q5 O  M3 D: W& V: oorg:github sort:reactions-asc        匹配 GitHub 拥有的存储库中的问题,按反应数量升序排序(从最少到最多)
    " ~7 f, o0 v- ]7 a$ C+ dorg:github sort:reactions-+1        匹配 GitHub 拥有的存储库中的问题,按最多点赞 (👍) 反应排序+ F! y) |2 P5 p2 o! M
    org:github sort:reactions- -1        匹配 GitHub 拥有的存储库中的问题,按最多 (👎) 反应排序
    7 C1 Y- `# e+ u6 e. [; o3 V- j7 f2 Worg:github sort:reactions-smile        匹配 GitHub 拥有的存储库中的问题,按最多笑 (😄) 反应排序# W6 \' I% F5 x% R6 G3 K
    org:github sort:reactions-tada        匹配 GitHub 拥有的存储库中的问题,按大多数欢呼 (🎉) 反应排序
    ! v0 @, K" x- q% f5 D9 u: Horg:github sort:reactions-heart        匹配 GitHub 拥有的存储库中的问题,按大多数心脏 (❤️) 反应排序1 S" Z1 F1 Q5 e! r
    2.3. 按作者日期排序0 B& D4 a* m$ c3 o- X' D: q
    语法        例子7 z; A- a3 X/ r1 p4 ^1 d
    org:github sort:author-date feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期降序排序# y* F/ K; U3 c4 ^" G
    org:github sort:author-date-asc feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期升序排序: d, @  X) j) N5 M9 X& B
    2.4. 按提交者日期排序
    1 K* _9 o8 ^% j. H# i9 K语法        例子
    ' [! E4 g  h  j, ]2 p* Borg:github sort:committer-date        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期降序排序
    ( S" c; J6 T2 ]+ Z) F" c; J; L6 f7 Horg:github sort:committer-date-asc        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期升序排序! E- Z  T& A$ m' i1 ^8 R) r
    2.5. 按更新日期排序
    5 f' a3 u# ^/ v9 M$ D语法        例子
    7 I+ o5 f; @) p; Xsort:updated feature        匹配包含“feature”一词的存储库,按最近更新日期排序8 Q4 g; Z$ L: g) ~# s- R/ F
    sort:updated-asc feature        匹配包含单词“feature”的存储库,按最近更新日期排序4 l: [9 M; H  h
    3. 搜索范围
    2 V& Q  F. y  X4 J( B3.1. 搜索存储库
    9 y- y" x2 i2 o- c" a5 e9 K- w' P3.1.1. 按存储库名称、描述或 README 文件的内容搜索
    ; e7 X8 ]! m/ A, Y  z语法        例子- i4 u2 \5 i. G& J
    in:name jquery        匹配存储库名称中带有“jquery”的存储库。
    5 m% \3 ]: t4 |- [& A; n) iin:description jquery        匹配存储库描述中带有“jquery”的存储库。, w! u" v# ^/ T4 w1 u9 Q
    in:readme jquery        匹配存储库的 README 文件中提到“jquery”的存储库。
    9 R" a6 e+ T6 L, `3.1.2. 在用户或组织的仓库中搜索
    6 J! Y) d/ h% C语法        例子  Z& a; N: U) Z# n; @# Y! x
    user:defunkt forks:>100        匹配用户名为 defunkt 的具有超过 100 个 fork 的存储库。' s# Q8 n. S9 Y  ^
    3.1.3. 按存储库大小搜索! S( ?8 Y3 u9 [0 |0 n6 |$ Z; C
    语法        例子( h$ p, @! q0 d$ Z! z% e! d
    size:1000        匹配大小为 1 MB 的存储库/ U5 d* R' r7 D9 T2 a
    size:>=30000        匹配至少 30 MB 的存储库
    - z) a; z/ o! ~' f4 U7 wsize:<50        匹配小于 50 KB 的存储库
    , U: _5 u1 m* v- Qsize:50…120        匹配 50 KB 到 120 KB 之间的存储库
    * P/ D, k8 x9 g8 h3 c3.1.4. 按分叉数搜索
    0 {/ U) u+ C: S3 f! F语法        例子
    / ^# \2 F5 h: F/ I% ]0 T: @( Qforks:5        匹配只有五个 fork 的存储库
    # m& b; U% k, Hforks:>=205        匹配至少有 205 个 fork 的仓库- ?3 X  ]3 F/ G8 e
    forks:<90        匹配具有少于 90 个 fork 的存储库* }3 u% n* T; z0 m/ D5 ?
    forks:10…20        匹配具有 10 到 20 个 fork 的存储库, M. L4 `6 z' F0 c: {
    3.1.5. 按星数搜索' }3 w9 v3 u2 {
    语法        例子8 u1 t2 H  ]1 ?/ \) V  e1 |
    stars:500        匹配恰好有 500 颗星的存储库
      Z! c. A0 C5 \  `" `8 f) ^) ^  ^8 Jstars:10…20        匹配小于 1000 KB 的 10 到 20 星的存储库
    . r, _9 [# Q( Z5 o% V+ Wstars:>=500 fork:true language:php        匹配至少 500 个星的存储库,包括分叉的,用 PHP 编写的
    ( X% u3 p5 F3 u* J9 |2 D3.1.6. 按创建或上次更新存储库的时间搜索, d, f- a  _! w- w
    语法        例子
    - T7 ~3 l! H! }/ @' l& B* Vwebos created:<2011-01-01        匹配 2011 年之前创建的带有“webos”一词的存储库  _) p% X6 H3 ~  \9 Y# p+ O' v: D5 j
    css push:>2013-02-01        匹配 2013 年 1 月之后推送到的带有“css”一词的存储库0 c: [( @3 D" `2 i% u6 n
    case push:>=2013-03-06 forknly        匹配 2013 年 3 月 6 日或之后推送到的带有单词“case”的存储库,并且是分叉。
    : O* p. A- G! I4 _' N, u3 [3.1.7. 按语言搜索' K) ~( Z  x9 z2 N. \
    语法        例子
    / U# f8 L$ X+ g. e3 arails language:javascript        匹配使用 JavaScript 编写的带有“rails”一词的存储库; L, D) y" L5 j( `( X' z  y5 ?
    3.1.8. 按主题搜索
    ' }! b% V& N8 F0 L( h语法        例子
    / i1 a$ n7 g* u# i4 Etopic:jekyll        匹配已分类为主题“jekyll”的存储库
    1 M- O9 D" x- G( b3.1.9. 按主题数量搜索4 w+ N- _' {# n' {
    语法        例子
    2 _4 B2 o# t) S) Y& L8 rtopic:5        匹配具有五个主题的存储库2 Z3 ~+ I' m, f- @
    topic:> 3        匹配具有三个以上主题的存储库. x/ ^2 Q+ _. a: k1 D3 `% |5 [, }
    3.1.10. 按许可证搜索. ]4 o6 o9 `2 Y/ W! ]! m
    语法        例子
    7 g' a6 K: v5 L. J4 |2 J8 dlicense:apache-2.0        匹配在 Apache License 2.0 下获得许可的存储库
    " c& k3 b$ H1 I6 R2 N% h3.1.11. 按存储库可见性搜索4 X4 }3 ?" O0 T& B' l! F5 k- O- D0 \* d
    语法        例子7 r0 T. I8 T. D$ n  }% k7 b( k" ~5 @
    is:public org:github        匹配 GitHub 拥有的公共存储库, i" F% N4 H% p; Z* a
    is:internal test        匹配您可以访问并包含“test”一词的内部存储库
    , ]' ~* {/ \3 H) k) K  A% Zis:private pages        匹配您可以访问并包含“pages”一词的私有存储库$ V) ~3 {+ O! i6 `$ w* U
    3.1.12. 根据仓库是否是镜像进行搜索' r- E/ `( Z8 a$ j  l
    语法        例子& ]) {, ?, l8 h- P) z
    mirror:true GNOME        匹配作为镜像且包含单词“GNOME”的存储库) x+ y5 C3 {  D$ T. D0 e9 F
    mirror:false GNOME        匹配非镜像且包含“GNOME”一词的存储库
    . m0 h7 m- C  j1 S. @& P) M" R/ n3.2. 搜索主题# y7 H) o* c$ E/ q
    3.2.1. 使用搜索限定符缩小搜索范围- K9 a8 y3 q/ A# w; v. s+ P
    语法        例子4 V' Y$ K, p) I5 \$ T
    is:curated javascript        匹配经过策划并包含“javascript”一词的主题
    9 z" x6 e% ]  y6 fis:featured javascript        匹配https://github.com/topics/上的特色主题并包含“javascript”一词
    3 W" D  A  g! U: o5 g8 l! u5 xis:not-curated javascript        匹配没有额外信息(例如描述或徽标)并包含“javascript”一词的主题
    / I# j# p' j& K; Q* zis:not-featured javascript        匹配https://github.com/topics/上没有特色且包含“javascript”一词的主题! v6 P4 C! Z4 m5 n  N
    repositories:>5000        匹配具有超过 5000 个存储库的主题
    8 K7 o& l' h2 `' n7 P, N! r! g; f3.3. 搜索代码
    $ E: M  G( k) `! G序号        代码搜索的注意事项:由于搜索代码的复杂性,对搜索的执行方式有一些限制/ f! F% ?0 y! N3 M5 H. y$ W
    1        必须登录 GitHub 上的用户帐户才能在所有公共存储库中搜索代码
    , C0 M; k- ^+ I2        只有当分叉的星数多于父存储库时,分叉中的代码才可搜索。星号少于父存储库的分叉不会为代码搜索编制索引。要在搜索结果中包含星数多于父级的分叉,您需要将fork:true或添加forknly到您的查询中。有关更多信息,请参阅“在分叉中搜索”2 A; ?9 R* h4 u1 L, M
    3        仅对默认分支进行索引以进行代码搜索, f4 M! }# Y; N5 z$ b4 I' a" P
    4        只能搜索小于 384 KB 的文。2 ]* `" `$ _. r- b$ q
    5        只能搜索少于 500,000 个文件的存储库
    + ~/ C5 n& K0 t6        只有在去年有活动或在搜索结果中返回的存储库才可搜索! a: D! T, W/ ~; M- n
    7        除了filename搜索之外,在搜索源代码时,您必须始终包含至少一个搜索词。例如,搜索language:javascript无效,而搜索无效amazing language:javascript, T* v1 {2 v- N1 q* z5 ^! d6 i
    8        搜索结果最多可以显示来自同一个文件的两个片段,但文件中可能会有更多的结果
    6 k/ Z$ z- q% P& F" U: d5 T9        您不能在搜索查询中使用以下通配符:. , : ; / \ ` ’ " = * ! ? # $ & + ^
    , _1 }9 `% R0 o* X3.3.1. 按文件内容或文件路径搜索; E' ~9 _3 u- f7 D! g3 H
    语法        例子
    5 a! y3 F& I0 m8 c4 K- aoctocat in:file        匹配文件内容中出现“octocat”的代码- E' B; f5 O; ~( a+ o
    octocat in:path        匹配文件路径中出现“octocat”的代码
    : L: M4 N1 G3 L% b/ G3.3.2. 在用户或组织的仓库中搜索
    * l$ a/ I( D  U8 |7 n语法        例子! [: [8 N9 ?3 {* V7 V
    user:defunkt extension:rb        匹配来自@defunkt 的以.rb结尾的代码
    * n. y5 G  [+ Z) Forg:github extension:js        匹配来自 GitHub 的以.js结尾的代码. D6 s7 t6 I1 ?9 V
    repo:mozilla/shumway extension:as        匹配@mozilla 的 shumway 项目中以.as结尾的代码' X* f# ]+ L9 ]. e( ~3 w
    3.3.3. 按语言搜索6 \$ p5 u7 _9 o2 {! j8 n" P( D
    语法        例子
    ) m* j. t. h# p( t4 {: b. Delement language:xml size:100        匹配带有标记为 XML 且正好有 100 个字节的单词“element”的代码/ B6 _) M0 [% _8 f. ?7 R" f
    display language:scss        匹配带有单词“display”的代码,它被标记为 SCSS# \8 [; D+ _/ Q" Y
    org:mozilla language:markdown        匹配所有@mozilla 存储库中标记为 Markdown 的代码& t0 m  w3 @/ V% Q8 [. T* C$ Z2 L
    3.3.4. 按文件大小搜索
    " o: R3 Y6 }4 H$ R9 _6 U7 _. W8 x语法        例子
    3 ]; i- G/ X/ L( P2 x( m7 v0 ^function size:>10000 language:python        匹配用 Python 编写的大于 10 KB 的文件中带有“function”一词的代码
    7 D! C* p$ m" }( x( F2 B3.3.5. 按文件名搜索( V3 r: ?8 j" W# P+ r
    语法        例子- u! y  K, U7 X7 t/ ]
    filename:linguist        匹配名为“linguist”的文件
    2 z4 D7 c8 E5 D9 P# Jfilename:.vimrc commands        匹配带有 “commands” 一词的.vimrc文件。
    ) V% ]: c2 s, j. l& ~4 ]3.4. 搜索用户, v$ q( F: ^4 w
    3.4.1. 按帐户名称、全名或公共电子邮件搜索
    7 X1 k: e; n# f) ?2 |' W7 G8 Y语法        例子9 V  l5 z7 Z2 O) x- ^- O' x
    userctocat        匹配用户名为“octocat”的用户
    5 M4 \/ J( d6 iorg:electron type:users        匹配 Electron 组织的账户名
    9 M( g- O$ Y, Y6 Lkenya in:login        匹配用户名中包含“kenya”一词的用户
    ( g/ E, R4 r3 |2 C: z$ Gbolton in:name        匹配真实姓名中包含单词“bolton”的用户3 _; L+ p+ k2 V$ D5 q
    fullname:Nat Friedman        匹配全名“Nat Friedman”的用户。注意:此搜索限定符对间距敏感。
    , [5 P6 I+ }& o- s* }: h( g7 Fdata in:email        将用户与电子邮件中的“data”一词匹配起来
    - J" y5 ?+ M3 S5 Y3.4.2. 按用户拥有的仓库数量搜索
      Q. Q( F& L( \+ j+ D9 C0 L语法        例子- L% s' _: q- B! f% c
    repos:>9000        匹配存储库数量超过 9,000 的用户+ D6 }6 z5 q+ Y6 e9 i& G
    bert repos:10…30        匹配用户名或真实姓名中包含“bert”一词且拥有 10 到 30 个存储库的用户
    1 B, w' V5 J1 a2 o  w) W3.4.3. 按创建用户帐户的时间搜索
    0 ~; y4 E6 ?& g3 d8 _! @语法        例子) e: M0 ?; S8 B7 \! X
    created:<2011-01-01        匹配 2011 年之前加入的用户% M9 q2 g% P- b: @
    created:>=2013-05-11        匹配在 2013 年 5 月 11 日或之后加入的用户! Y! J% h6 _) ~
    created:2013-03-06 location:london        匹配于 2013 年 3 月 6 日加入且将其位置列为伦敦的用户' N5 J  ^9 d7 V# N
    created:2010-01-01…2011-01-01 john in:login        匹配在 2010 年到 2011 年之间加入且用户名中包含单词“john”的用户+ g) f6 W: A- Z; B6 _
    3.4.4. 按关注者数量搜索5 X. f. i/ G( ]$ q7 F( m0 C
    语法        例子
    3 F8 z" q, u! q6 Ifollowers:>=1000        匹配拥有 1,000 或更多关注者的用户
    , |- p" p3 w6 msparkle follower:1…10        匹配拥有 1 到 10 个关注者的用户,他们的名字中带有“sparkle”这个词
    / R3 V: a: `+ e) c" [  ], g) H9 Q! c————————————————
    ! |( z+ p/ e; O# C版权声明:本文为CSDN博主「Jack·Kwok」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。  R) N$ Z) _; a/ j( ~2 V
    原文链接:https://blog.csdn.net/PaperJack/article/details/118543980
    + T; I' N9 T( k
    7 o* I' e" p; d: u* V; }
    8 F3 z7 a0 l- y; R+ 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-4-12 19:21 , Processed in 0.419479 second(s), 56 queries .

    回顶部