QQ登录

只需要一步,快速开始

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

    ! [6 w6 k2 \, J  X4 G( i5 X73个GitHub高级搜索技巧, n. S& w$ W& \1 ^  L2 H
    73个GitHub高级搜索技巧6 e: s) l6 x) Y7 c& n8 m
    1. 前言
    ' K1 O8 P7 r/ k& W: s2. 排序搜索结果) }& @, Y: U5 Q) A1 }
    2.1. 按交互排序
    7 ?5 k$ O4 N0 k2.2. 按反应排序
    + |  P9 D% |) p/ X3 {9 s2.3. 按作者日期排序5 u" t* B. G; g( R( l8 P- @; d
    2.4. 按提交者日期排序* ^: k, C* v9 @8 O/ l
    2.5. 按更新日期排序
    3 b6 Q4 u* O) E3. 搜索范围
    ( V+ d0 H4 g7 h3.1. 搜索存储库
    9 ?8 h8 l! t' m3.1.1. 按存储库名称、描述或 README 文件的内容搜索
    ' \, H  {# Y- ~. [8 y- r- f3.1.2. 在用户或组织的仓库中搜索1 w: u. h& U, f3 D. ?' q5 x: `. c
    3.1.3. 按存储库大小搜索
    9 ?2 A2 A+ D# i$ k! p. `2 |3.1.4. 按分叉数搜索
    7 I0 @  F: u; c7 T# i9 b3.1.5. 按星数搜索
    ; M  D& g' ]* Y3.1.6. 按创建或上次更新存储库的时间搜索
    + t: p4 f% J. S. c  d2 X& S3.1.7. 按语言搜索
    4 T- q! w& f2 E4 _7 C5 o3.1.8. 按主题搜索/ F$ d: {' K. Y+ Y" U. D% N
    3.1.9. 按主题数量搜索
    6 }8 T: b, \2 X) A3 k' k3 b3.1.10. 按许可证搜索0 B  z0 h$ `/ g
    3.1.11. 按存储库可见性搜索, D: T0 i' ^  h% ?3 {
    3.1.12. 根据仓库是否是镜像进行搜索
    $ ?# B) g  j* q4 o% E3.2. 搜索主题2 S2 v# b4 u' `
    3.2.1. 使用搜索限定符缩小搜索范围' ^/ \1 g$ V2 w" ~( `4 p5 k8 |
    3.3. 搜索代码* B. l3 C0 J) r3 t( y7 L0 E# k
    3.3.1. 按文件内容或文件路径搜索, b$ R* F4 H, Q1 N6 `
    3.3.2. 在用户或组织的仓库中搜索
    # H2 R9 q! s1 Y4 s3.3.3. 按语言搜索5 p8 R3 h/ B4 W$ n* W1 E5 F# t
    3.3.4. 按文件大小搜索
    ' ^  z* ~# @) X! L5 Z( r* f7 g  a/ ^3.3.5. 按文件名搜索
    & D9 \8 h, {) g/ u: l; z6 P6 G3.4. 搜索用户  b4 X' L0 G, L/ c, V% e
    3.4.1. 按帐户名称、全名或公共电子邮件搜索7 k$ G0 d) Z$ m3 |3 A7 E
    3.4.2. 按用户拥有的仓库数量搜索
    , R6 H/ i* r! f' Y. U) |. {5 X2 t! p3.4.3. 按创建用户帐户的时间搜索. N) S/ d' O, t4 X
    3.4.4. 按关注者数量搜索- C4 W# [3 E% x) w8 }8 `" i/ b" O
    1. 前言
    ' m3 r6 B3 ~; e$ V9 l' d1 `6 qGitHub的搜索功能绝不仅仅是单纯匹配你输入的内容,而是有如下匹配规则。; R' p+ \3 g" h& k" z9 G  s$ a  E) |

    + _; M: \% {  N3 Q7 C
    ' s  U2 d# l3 H- [, C. k
    本文参考自GitHub官方文档。
    5 q$ A5 q3 q* _1 ]; K+ t; wGitHub官方文档:https://docs.github.com/en/ e* @) l6 K0 w# \# j$ i) j
    , k6 [6 |! w) y. ~
    5 {: O# ^- _) g, R! I& U5 k0 \; x2 h: Y

    - Z' b% }4 K8 f# Q8 _& Z

    0 m8 \) a$ H% K8 G9 B- ^9 ~# c* T本文第3点总结了目前GitHub搜索最常用的技巧,根据我们平时搜索的内容分为了搜索存储库、搜索主题、搜索代码和搜索用户四个小点,你可以根据自己想要的搜索内容定位到每个小点,同时第2点总结了将你搜索到的结果按照什么排序顺序排序,包括交互排序、反应排序、作者日期排序、提交者日期排序、更新日期排序等。
    ! `6 F8 k) j2 W7 w6 [' |% S: g" `  Z5 ^1 ^: Q- o: s. b

    7 N$ P' `2 W8 J* n& m2. 排序搜索结果) [1 G) z2 Q0 ]) t: D- C
    2.1. 按交互排序
    7 X3 x& b, |$ V语法        例子
    0 i: R9 f9 D; I- I% oorg:github sort:interactions        匹配 GitHub 拥有的存储库中的问题,按反应和评论的最高组合数排序
    . P1 g/ M6 ]: k7 I. Rorg:github sort:interactions-asc        匹配 GitHub 拥有的存储库中的问题,按最少的反应和评论组合数排序# p' T1 v( N- x* |: X/ N/ h- M: \% J- H
    2.2. 按反应排序
      a- G6 X& y) e& \6 |语法        例子% U* l- p4 p2 Y! }. y
    org:github sort:reactions        匹配 GitHub 拥有的存储库中的问题,按最高反应数排序。0 ]9 t0 t( a3 G  W. q
    org:github sort:reactions-asc        匹配 GitHub 拥有的存储库中的问题,按反应数量升序排序(从最少到最多)/ B# F$ j0 ~4 o' n4 ]! r- ?: f
    org:github sort:reactions-+1        匹配 GitHub 拥有的存储库中的问题,按最多点赞 (👍) 反应排序0 V; v4 u& n- a7 M
    org:github sort:reactions- -1        匹配 GitHub 拥有的存储库中的问题,按最多 (👎) 反应排序- {, V6 E: O' H
    org:github sort:reactions-smile        匹配 GitHub 拥有的存储库中的问题,按最多笑 (😄) 反应排序0 x8 i) S0 f+ J5 D5 D" T
    org:github sort:reactions-tada        匹配 GitHub 拥有的存储库中的问题,按大多数欢呼 (🎉) 反应排序. B' U5 |2 d% f  J$ ^
    org:github sort:reactions-heart        匹配 GitHub 拥有的存储库中的问题,按大多数心脏 (❤️) 反应排序6 {8 b0 g8 `0 O8 F  i; i  a  J& ~( ~* y
    2.3. 按作者日期排序
    - m  K1 y+ }; F  z语法        例子  G1 n$ s: P3 a7 s& A
    org:github sort:author-date feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期降序排序* D/ U# h1 a* o7 g0 x
    org:github sort:author-date-asc feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期升序排序
    : [. T4 q; K8 S2 Z' Q3 q) U: o2.4. 按提交者日期排序
    2 ?1 D" O+ k7 U语法        例子
    . Q$ ]( ^6 q9 u  {. y: [org:github sort:committer-date        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期降序排序
    , |/ d/ H( }# l6 w$ r2 K0 vorg:github sort:committer-date-asc        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期升序排序
    $ z, A8 V1 i4 B; r* b; `! _2.5. 按更新日期排序
    . v8 T' N6 w1 o& q语法        例子
    * Q# L3 ^* X$ ]5 ~6 bsort:updated feature        匹配包含“feature”一词的存储库,按最近更新日期排序
    6 i6 j  V2 z# y$ ^" \# `4 [# Z: y0 \sort:updated-asc feature        匹配包含单词“feature”的存储库,按最近更新日期排序) ^9 ^% Q1 J3 X7 g+ p! [  q# i# D: F, C
    3. 搜索范围
    & S' I% R7 |* B- `6 f+ v8 a3.1. 搜索存储库& a7 J4 U# y7 }; Z" B5 B  R
    3.1.1. 按存储库名称、描述或 README 文件的内容搜索: |4 h" V! r8 {) x5 n( H; A
    语法        例子
    9 d' X( I, Y+ l/ g0 jin:name jquery        匹配存储库名称中带有“jquery”的存储库。
    . i, I- l7 R4 Z, f# v6 iin:description jquery        匹配存储库描述中带有“jquery”的存储库。
    2 [5 Q2 C$ h8 Fin:readme jquery        匹配存储库的 README 文件中提到“jquery”的存储库。/ `# b- U) C1 I5 L& N4 T0 ^& Q# O) S  Z
    3.1.2. 在用户或组织的仓库中搜索2 O- V/ j% G& s8 m. C
    语法        例子1 X4 H, K4 X( Z' q
    user:defunkt forks:>100        匹配用户名为 defunkt 的具有超过 100 个 fork 的存储库。& E( @3 Y) E) A: |. l+ h  b
    3.1.3. 按存储库大小搜索4 F6 n: J. X4 X7 G. i4 t0 a4 I& F5 h
    语法        例子: T. s) d7 P2 }0 ?9 @
    size:1000        匹配大小为 1 MB 的存储库
    ( t5 \4 c+ Z0 L& a8 vsize:>=30000        匹配至少 30 MB 的存储库2 W5 ^' I; K2 o. _& g: \- S! j
    size:<50        匹配小于 50 KB 的存储库; |: k+ ~+ t+ A0 z$ M
    size:50…120        匹配 50 KB 到 120 KB 之间的存储库
    * M  u( B5 {6 ~: \: h3.1.4. 按分叉数搜索
    9 r' L3 |0 U0 Y3 q. a语法        例子
    2 j3 V$ S# b8 n  \; Mforks:5        匹配只有五个 fork 的存储库- n' z/ ]7 \/ D/ I4 {3 d5 v
    forks:>=205        匹配至少有 205 个 fork 的仓库5 ~! P0 |1 o/ i
    forks:<90        匹配具有少于 90 个 fork 的存储库
    7 Q% J; _0 B$ O( O5 R/ uforks:10…20        匹配具有 10 到 20 个 fork 的存储库1 o9 @  d$ p6 t1 O( p" S& p
    3.1.5. 按星数搜索8 I1 X; E7 h8 z" a, G
    语法        例子
    ' t( F, j6 h0 \6 `+ dstars:500        匹配恰好有 500 颗星的存储库
    9 W" B, _$ x: r4 x# b: Mstars:10…20        匹配小于 1000 KB 的 10 到 20 星的存储库1 T1 q% q- l  \& J8 Q
    stars:>=500 fork:true language:php        匹配至少 500 个星的存储库,包括分叉的,用 PHP 编写的# Q; I1 }  S. P& S" T' l7 d6 e9 E
    3.1.6. 按创建或上次更新存储库的时间搜索* y) Q+ \1 s6 i! n0 T
    语法        例子' W, z; X7 q9 k& W2 e4 W: z
    webos created:<2011-01-01        匹配 2011 年之前创建的带有“webos”一词的存储库
    4 ?" p. p, @2 |/ o  M: A% |css push:>2013-02-01        匹配 2013 年 1 月之后推送到的带有“css”一词的存储库* [+ N# a( X% w, W& V7 [" e
    case push:>=2013-03-06 forknly        匹配 2013 年 3 月 6 日或之后推送到的带有单词“case”的存储库,并且是分叉。
    2 q, n+ z. N' h3.1.7. 按语言搜索8 ]8 M; L9 K% Q& A, V0 J
    语法        例子
    ! x5 V, P7 T9 p' v' @1 `; Yrails language:javascript        匹配使用 JavaScript 编写的带有“rails”一词的存储库
    2 y9 q7 q  w4 I& f; D6 B+ H5 w3.1.8. 按主题搜索
    , K* I# o$ {* V& D% C语法        例子) U$ ?; k3 R% N- e! R, N# _
    topic:jekyll        匹配已分类为主题“jekyll”的存储库
      o  ^" b) c( c9 F3.1.9. 按主题数量搜索% s& {) T% ^' J+ v0 _
    语法        例子
    ; P; t4 n- s- j* A" h4 B; t1 mtopic:5        匹配具有五个主题的存储库  S6 L' u" b. J8 A% N; w6 `
    topic:> 3        匹配具有三个以上主题的存储库
    . L+ S$ g, n, G) |, i& ]3.1.10. 按许可证搜索
    8 B* e. O7 v" E语法        例子8 R2 L0 N! m/ @
    license:apache-2.0        匹配在 Apache License 2.0 下获得许可的存储库* Q4 _* _/ H  F3 c$ W7 S. V
    3.1.11. 按存储库可见性搜索
    - j5 X+ ?8 k, H: M1 k语法        例子
    4 t6 ?. F: _7 N5 k4 ?. }% @is:public org:github        匹配 GitHub 拥有的公共存储库
    $ C  b/ Y; p2 Q9 X- r5 his:internal test        匹配您可以访问并包含“test”一词的内部存储库
    ' E; `% [2 o+ q& f+ L+ yis:private pages        匹配您可以访问并包含“pages”一词的私有存储库
    ) e% B4 R% ]$ k( j! H3.1.12. 根据仓库是否是镜像进行搜索
    4 t- [4 V7 y$ h3 S+ k) e语法        例子
    6 |0 A4 y6 }+ p) D' hmirror:true GNOME        匹配作为镜像且包含单词“GNOME”的存储库3 E/ \0 ~; r5 h9 ~7 v
    mirror:false GNOME        匹配非镜像且包含“GNOME”一词的存储库
    6 L+ h6 O' m2 j5 H3.2. 搜索主题( I$ X; Y. y/ N0 x% B/ y3 S2 T' r
    3.2.1. 使用搜索限定符缩小搜索范围- @5 Y. p. v8 D: J
    语法        例子8 C6 R* V- O% U+ P
    is:curated javascript        匹配经过策划并包含“javascript”一词的主题; w' K8 a' b4 V' ^! w
    is:featured javascript        匹配https://github.com/topics/上的特色主题并包含“javascript”一词
    ) i- Q4 a9 S. l2 F+ T, |9 ~is:not-curated javascript        匹配没有额外信息(例如描述或徽标)并包含“javascript”一词的主题, ], J; L9 L- C4 G
    is:not-featured javascript        匹配https://github.com/topics/上没有特色且包含“javascript”一词的主题
    ; {4 K0 I) t* [' W6 R. yrepositories:>5000        匹配具有超过 5000 个存储库的主题
    ) A) @  B" F, r8 z# o+ t3.3. 搜索代码# z$ ]" D+ U5 ~4 p
    序号        代码搜索的注意事项:由于搜索代码的复杂性,对搜索的执行方式有一些限制3 f+ p6 D8 A& f- H
    1        必须登录 GitHub 上的用户帐户才能在所有公共存储库中搜索代码6 J* B$ g$ x7 P
    2        只有当分叉的星数多于父存储库时,分叉中的代码才可搜索。星号少于父存储库的分叉不会为代码搜索编制索引。要在搜索结果中包含星数多于父级的分叉,您需要将fork:true或添加forknly到您的查询中。有关更多信息,请参阅“在分叉中搜索”6 [7 ^7 f& V% m7 ~% J
    3        仅对默认分支进行索引以进行代码搜索) H. j( q* }$ f5 K# [
    4        只能搜索小于 384 KB 的文。/ T3 N" y) T; Q5 c. z
    5        只能搜索少于 500,000 个文件的存储库0 i. C0 H$ ?( r! T) }
    6        只有在去年有活动或在搜索结果中返回的存储库才可搜索
    " r, M1 [% m) x9 D+ [7        除了filename搜索之外,在搜索源代码时,您必须始终包含至少一个搜索词。例如,搜索language:javascript无效,而搜索无效amazing language:javascript
    " ^! Q; t: G9 c# J8        搜索结果最多可以显示来自同一个文件的两个片段,但文件中可能会有更多的结果) f/ M; h, [0 R  j* J7 O0 x7 t8 k( W
    9        您不能在搜索查询中使用以下通配符:. , : ; / \ ` ’ " = * ! ? # $ & + ^2 _$ ~5 j# s: _5 b$ P3 C
    3.3.1. 按文件内容或文件路径搜索
    * Y$ `/ }& N2 L. J语法        例子
    4 I( i6 f+ w% J- E" Y/ \octocat in:file        匹配文件内容中出现“octocat”的代码
    6 o) D; B! B5 J  R# {octocat in:path        匹配文件路径中出现“octocat”的代码8 }* a! C$ n7 C* e
    3.3.2. 在用户或组织的仓库中搜索+ p- |  ]% ]' {& P, p, Q
    语法        例子
    ' O, `, h6 h8 H) Y2 R* wuser:defunkt extension:rb        匹配来自@defunkt 的以.rb结尾的代码
    / ?# Y, O2 e- m7 i- i. eorg:github extension:js        匹配来自 GitHub 的以.js结尾的代码( g1 c$ A9 {0 ~; E
    repo:mozilla/shumway extension:as        匹配@mozilla 的 shumway 项目中以.as结尾的代码
    # ?' q; z8 m$ p6 Z6 \( z8 o2 {3.3.3. 按语言搜索
    " O5 i  h0 @4 v8 w" E语法        例子* k( ]( ?8 ~) Y5 I1 h) m
    element language:xml size:100        匹配带有标记为 XML 且正好有 100 个字节的单词“element”的代码
    : |  ~% `- a" i! c2 s7 b/ X) pdisplay language:scss        匹配带有单词“display”的代码,它被标记为 SCSS
      o0 K% G" V& L) lorg:mozilla language:markdown        匹配所有@mozilla 存储库中标记为 Markdown 的代码$ Z" M) q$ @4 i) z% z9 ^
    3.3.4. 按文件大小搜索
    , o: e; b3 L8 f  I  N2 r语法        例子
    $ Y) u% S8 ^3 F1 Xfunction size:>10000 language:python        匹配用 Python 编写的大于 10 KB 的文件中带有“function”一词的代码
    ) V# ?9 E# @" Y1 c& L7 l6 N( H8 v/ m3.3.5. 按文件名搜索. M5 v& z6 g. E( b
    语法        例子
    ' K' g. T4 u  G8 |3 X" V; ^  E! f/ gfilename:linguist        匹配名为“linguist”的文件* y# _7 P0 b. b0 S& J
    filename:.vimrc commands        匹配带有 “commands” 一词的.vimrc文件。
    ) h- t; k& w8 d. o7 ?7 P5 p  l( @3.4. 搜索用户
    3 W, ]4 p' b  Z& ?) y) E" d3 [3.4.1. 按帐户名称、全名或公共电子邮件搜索3 j! Z7 a/ \! k) n* G2 ^/ |2 O: j
    语法        例子) o* ^% L- B+ |% T8 k; T" o1 i/ [
    userctocat        匹配用户名为“octocat”的用户( u+ n: X. R1 a
    org:electron type:users        匹配 Electron 组织的账户名
      S5 d9 J5 C( J) v' J7 Skenya in:login        匹配用户名中包含“kenya”一词的用户+ C. q7 a) [% \
    bolton in:name        匹配真实姓名中包含单词“bolton”的用户9 c) m8 J' h3 W! k
    fullname:Nat Friedman        匹配全名“Nat Friedman”的用户。注意:此搜索限定符对间距敏感。' N# G+ }! Q8 L  S/ d- H; X
    data in:email        将用户与电子邮件中的“data”一词匹配起来9 n; r' I" |# y' V6 `1 v: A/ H; Y
    3.4.2. 按用户拥有的仓库数量搜索
    $ H& |6 C2 M; ~" N% K( O% N语法        例子
    1 C" p6 f8 c. prepos:>9000        匹配存储库数量超过 9,000 的用户
    % c: Y, l6 ]% i: N- n5 Bbert repos:10…30        匹配用户名或真实姓名中包含“bert”一词且拥有 10 到 30 个存储库的用户
    " u/ _# C, m% H1 T" B8 A3.4.3. 按创建用户帐户的时间搜索+ V* j' e7 j& C& C6 k3 [: v
    语法        例子- _8 y6 M( @9 p. ^
    created:<2011-01-01        匹配 2011 年之前加入的用户
    8 g! N: j" ]5 T# `' a. |% H% Screated:>=2013-05-11        匹配在 2013 年 5 月 11 日或之后加入的用户3 S8 _  ~& c  }' \; a2 ~
    created:2013-03-06 location:london        匹配于 2013 年 3 月 6 日加入且将其位置列为伦敦的用户
    0 a0 g1 c: z# R- U2 r- [4 qcreated:2010-01-01…2011-01-01 john in:login        匹配在 2010 年到 2011 年之间加入且用户名中包含单词“john”的用户& f8 {% V  c+ |+ e
    3.4.4. 按关注者数量搜索7 E3 d! D# @& S* N# {6 \
    语法        例子
    4 {! P4 Q' j/ c+ h6 Wfollowers:>=1000        匹配拥有 1,000 或更多关注者的用户
    % L: r8 u  {5 {0 k* g, q' ]* Lsparkle follower:1…10        匹配拥有 1 到 10 个关注者的用户,他们的名字中带有“sparkle”这个词; D  f& n# `! k3 [, E" O4 L+ P( Y
    ————————————————. ?) e* l7 C4 C: }2 ^% ?/ H- S
    版权声明:本文为CSDN博主「Jack·Kwok」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。' s' i+ Y, ^2 k
    原文链接:https://blog.csdn.net/PaperJack/article/details/1185439800 k* p; C/ `1 @4 u3 s/ ~5 K4 o
    ) v1 U' t8 t0 X$ ^$ e
    ! Y) F/ l5 g, X4 q' ~
    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-7-31 17:06 , Processed in 0.367769 second(s), 56 queries .

    回顶部