QQ登录

只需要一步,快速开始

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

    & f: I5 d5 u5 ]. c73个GitHub高级搜索技巧
    ) T5 C  c4 i  a: D, d6 a73个GitHub高级搜索技巧
    ; i  |& p" ?  X) K4 e0 u1 i1. 前言
    ' H1 j4 ^$ j9 }4 A4 |9 l2 Z$ H6 Z2. 排序搜索结果$ a2 G% i# C1 B" W) d5 h
    2.1. 按交互排序
    - S/ R" ]3 H& h" l3 w3 b% k2.2. 按反应排序; ~. C" U7 K( Z5 t' b5 a- @8 b
    2.3. 按作者日期排序
    # L6 A( |8 a" M5 m; X( G4 k2.4. 按提交者日期排序# V7 Z+ q* O2 X+ E; H+ y
    2.5. 按更新日期排序
    0 O/ H* F  y) y4 B% J% C3. 搜索范围6 z- {! ?% f* K4 U
    3.1. 搜索存储库
    ( J6 L) Y; g5 t4 ^+ W- I" Y# }3.1.1. 按存储库名称、描述或 README 文件的内容搜索
    : J  N0 f) w* w8 c3.1.2. 在用户或组织的仓库中搜索
    # N2 ?) W' ]1 F0 H8 U% ]/ T3.1.3. 按存储库大小搜索
    0 g6 n$ X: x6 O$ D: e& L9 p3.1.4. 按分叉数搜索
    : L; |$ f' P0 n1 W( k3.1.5. 按星数搜索
    : i8 Y6 x$ \# r. R# G3.1.6. 按创建或上次更新存储库的时间搜索: i! u: v* m3 K2 \8 n( v
    3.1.7. 按语言搜索& B, j  R) t9 W3 }$ d
    3.1.8. 按主题搜索0 P8 i. C; `0 c3 J7 f  ~0 W  K+ n
    3.1.9. 按主题数量搜索: \' e" q3 }% ^* |! o1 o- U' m
    3.1.10. 按许可证搜索4 O/ l6 z& S' D" x" c2 Z
    3.1.11. 按存储库可见性搜索
    3 ^3 Y% {; x$ @3.1.12. 根据仓库是否是镜像进行搜索$ L* Y0 @% x0 S. q( l" q
    3.2. 搜索主题
    6 L4 g5 d; ?! b! Z6 P/ N0 e' W/ v, F1 e3.2.1. 使用搜索限定符缩小搜索范围( w- z8 a" ~9 q0 n5 r( B
    3.3. 搜索代码
    8 X4 l$ N* z, z9 z. B- `& J/ ~3.3.1. 按文件内容或文件路径搜索
    ) f3 U6 g, ~, j" D: M/ J2 F3.3.2. 在用户或组织的仓库中搜索
    ' E* P1 J' e/ V, Z" o) S, q( L3.3.3. 按语言搜索
    % v# J# Z4 ?4 q  |  f  u4 |3.3.4. 按文件大小搜索" Z" W" G; F" u! p( O
    3.3.5. 按文件名搜索6 i0 O; \; u, o+ }
    3.4. 搜索用户
    4 r% v: {" S+ |5 M3.4.1. 按帐户名称、全名或公共电子邮件搜索  ]1 `0 _8 {7 G6 L
    3.4.2. 按用户拥有的仓库数量搜索8 `! A5 [% V9 A* B' G+ e% Z
    3.4.3. 按创建用户帐户的时间搜索1 P' \8 s# J8 g1 p( {
    3.4.4. 按关注者数量搜索
    5 v; ]: H' s6 b1 H  P6 w1. 前言
    ; N% w. b& D2 s9 e* v1 H! yGitHub的搜索功能绝不仅仅是单纯匹配你输入的内容,而是有如下匹配规则。
    % x. i; @2 x  v7 e+ p4 I
    5 g6 \/ l' z' p0 S0 p6 c
    * d. Q; V2 ~  Q$ g; e" ~( V) H
    本文参考自GitHub官方文档。0 t8 y- l0 A: m: }# x3 u! p: T" l
    GitHub官方文档:https://docs.github.com/en
      g: g5 D. G- q9 y" ]6 t% m5 g; u$ M2 u. Y% G

    4 h% v& {8 |6 ^' V7 j+ ]6 [) z  r
    0 m. \1 ^. m2 h! `- ]) M0 |  O- y
    % G; y% M9 G' |  a
    本文第3点总结了目前GitHub搜索最常用的技巧,根据我们平时搜索的内容分为了搜索存储库、搜索主题、搜索代码和搜索用户四个小点,你可以根据自己想要的搜索内容定位到每个小点,同时第2点总结了将你搜索到的结果按照什么排序顺序排序,包括交互排序、反应排序、作者日期排序、提交者日期排序、更新日期排序等。' ?" l6 n5 R, b+ o, w2 f% r0 j5 E+ @
    7 q" D" |6 }& k
    ( b8 D- X1 g" `1 }" d
    2. 排序搜索结果
    6 P8 C' n( |2 a. j" {0 a5 G% m) J2.1. 按交互排序
    ; E9 ~  e! Y  q- ]语法        例子" N% {% Z) W1 B( x3 @
    org:github sort:interactions        匹配 GitHub 拥有的存储库中的问题,按反应和评论的最高组合数排序3 Y  C" E6 `+ `; N; [
    org:github sort:interactions-asc        匹配 GitHub 拥有的存储库中的问题,按最少的反应和评论组合数排序
    1 R9 D/ k) H+ c; `7 |8 q2.2. 按反应排序
    2 J" |, c: I7 {. u语法        例子) X! k4 p+ ]/ ?
    org:github sort:reactions        匹配 GitHub 拥有的存储库中的问题,按最高反应数排序。
    # s- I+ Y: N1 K2 d4 f' ~org:github sort:reactions-asc        匹配 GitHub 拥有的存储库中的问题,按反应数量升序排序(从最少到最多)
    6 y/ H" r- {1 F7 Qorg:github sort:reactions-+1        匹配 GitHub 拥有的存储库中的问题,按最多点赞 (👍) 反应排序  A% m7 U0 w1 F" k5 W' R
    org:github sort:reactions- -1        匹配 GitHub 拥有的存储库中的问题,按最多 (👎) 反应排序6 h0 f% {; P2 p, Y7 `. ?
    org:github sort:reactions-smile        匹配 GitHub 拥有的存储库中的问题,按最多笑 (😄) 反应排序) K7 E3 |/ J2 w( c, D
    org:github sort:reactions-tada        匹配 GitHub 拥有的存储库中的问题,按大多数欢呼 (🎉) 反应排序3 T: q: i: _9 Z" F- O# N; x. y
    org:github sort:reactions-heart        匹配 GitHub 拥有的存储库中的问题,按大多数心脏 (❤️) 反应排序
    / u$ f* I+ Q* c; i* C2.3. 按作者日期排序8 L# g/ Z/ e0 ?' l5 O- u4 f
    语法        例子
    & |2 j; D4 [# Yorg:github sort:author-date feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期降序排序
    / {5 p; v, b  t1 v0 _- l, Borg:github sort:author-date-asc feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期升序排序
    5 C. y) O6 U! {, Z6 x2.4. 按提交者日期排序
    - T7 D# l; L- t2 ]* w) C7 t语法        例子8 N$ o5 L4 ]5 \- u1 [
    org:github sort:committer-date        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期降序排序2 ^, H4 |5 Y0 D" V! K
    org:github sort:committer-date-asc        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期升序排序9 K6 w2 L4 b3 X
    2.5. 按更新日期排序
    0 e& Q+ b6 M3 i1 L; A" o6 Q语法        例子
    3 H4 o4 z; w4 q2 q& y8 A. Esort:updated feature        匹配包含“feature”一词的存储库,按最近更新日期排序# t$ e3 A3 @- h9 e! U/ i
    sort:updated-asc feature        匹配包含单词“feature”的存储库,按最近更新日期排序# O% d9 m  }1 C( u6 @$ d7 p
    3. 搜索范围9 W, M  F, [1 p0 ~' P$ g9 M
    3.1. 搜索存储库" M3 v) e0 L( H  }% Y' e
    3.1.1. 按存储库名称、描述或 README 文件的内容搜索# ^/ v+ C8 @* x! J% ~
    语法        例子9 n: ]3 d! y) A, k3 R0 I
    in:name jquery        匹配存储库名称中带有“jquery”的存储库。
    9 J/ N9 v( _# l0 Bin:description jquery        匹配存储库描述中带有“jquery”的存储库。3 f/ S+ _: g, g! ]; ^
    in:readme jquery        匹配存储库的 README 文件中提到“jquery”的存储库。( J  E: V) b5 P; H- ^: L1 R. K
    3.1.2. 在用户或组织的仓库中搜索
    6 U5 B1 B% a) }( [) ?语法        例子
    / R: j2 M6 G5 Y$ Ouser:defunkt forks:>100        匹配用户名为 defunkt 的具有超过 100 个 fork 的存储库。) F  l' w! j8 ?% V
    3.1.3. 按存储库大小搜索
    ' K/ R/ k- ^4 P* P8 @语法        例子
    1 m# s  x+ v. w. \size:1000        匹配大小为 1 MB 的存储库' U" W) I+ }  w0 l+ S$ b+ B1 _
    size:>=30000        匹配至少 30 MB 的存储库
    * S5 {4 t8 e* \size:<50        匹配小于 50 KB 的存储库3 b' u# Q* ?/ R/ y
    size:50…120        匹配 50 KB 到 120 KB 之间的存储库
    2 U8 j& z' L: D: U( j3.1.4. 按分叉数搜索! y& U$ z7 T' O3 s+ X
    语法        例子0 P5 U. P/ H) |- g: B8 s* ]
    forks:5        匹配只有五个 fork 的存储库" ~/ h% [# q  e1 p
    forks:>=205        匹配至少有 205 个 fork 的仓库/ W; U. U" y  Q# f
    forks:<90        匹配具有少于 90 个 fork 的存储库- R* O3 [+ T* w( O, Z7 b
    forks:10…20        匹配具有 10 到 20 个 fork 的存储库  B+ |1 k/ u$ Q2 A
    3.1.5. 按星数搜索
    : K1 ?1 c% |$ O3 j% b' k6 X4 l' K语法        例子
    + l6 L$ v) H6 x6 \9 M  w3 d1 Wstars:500        匹配恰好有 500 颗星的存储库5 R# A; j0 t. \- F- v
    stars:10…20        匹配小于 1000 KB 的 10 到 20 星的存储库! R% n+ i- [) |
    stars:>=500 fork:true language:php        匹配至少 500 个星的存储库,包括分叉的,用 PHP 编写的
    % x5 {+ `# x9 j+ X- w2 ]3.1.6. 按创建或上次更新存储库的时间搜索; C) U" O5 _% p% e
    语法        例子( G2 ~/ {! w! f
    webos created:<2011-01-01        匹配 2011 年之前创建的带有“webos”一词的存储库+ k/ W' Z: j" U. L- }" k% L, E
    css push:>2013-02-01        匹配 2013 年 1 月之后推送到的带有“css”一词的存储库) b1 U9 @, \8 O1 \& u; Q2 O9 _9 M
    case push:>=2013-03-06 forknly        匹配 2013 年 3 月 6 日或之后推送到的带有单词“case”的存储库,并且是分叉。, X! M/ k" \1 ^4 z- N" n
    3.1.7. 按语言搜索
    , m5 Q% b. @3 Q' ~6 ?语法        例子& o4 G; g3 H6 G( Y* W4 e' y1 L
    rails language:javascript        匹配使用 JavaScript 编写的带有“rails”一词的存储库2 r1 |: E$ z2 ]: s% E; W
    3.1.8. 按主题搜索, h% Y2 z, k+ Z0 `* |! G
    语法        例子
    $ F. ?5 G9 D5 z* ^5 w. k1 y% ~topic:jekyll        匹配已分类为主题“jekyll”的存储库) l/ h6 Y) V8 D0 P5 I
    3.1.9. 按主题数量搜索/ v$ L" k% t2 h1 q: S( o
    语法        例子
    ; D* A, l5 Y) l- s4 ]% D& L: }topic:5        匹配具有五个主题的存储库. D3 I& C+ C4 n, e4 l
    topic:> 3        匹配具有三个以上主题的存储库5 Z- N/ T5 R: p$ @+ p7 Z# c& S
    3.1.10. 按许可证搜索* b5 b, `* X. w+ e- H
    语法        例子
    ( e2 r' w" u: ]9 n& h# z6 j( p: ulicense:apache-2.0        匹配在 Apache License 2.0 下获得许可的存储库1 Q8 @# I2 \" H9 g
    3.1.11. 按存储库可见性搜索
    5 W' S, B- B4 Y  }/ H语法        例子
    ) [6 E! N4 k3 i6 ~3 n0 n) _3 Gis:public org:github        匹配 GitHub 拥有的公共存储库: A7 v' S- X! J8 J
    is:internal test        匹配您可以访问并包含“test”一词的内部存储库
    3 P# D( m( w2 z( h. @. _is:private pages        匹配您可以访问并包含“pages”一词的私有存储库" k7 N$ L. _6 f: b/ J9 G
    3.1.12. 根据仓库是否是镜像进行搜索  Z7 ?( b% Z2 ~2 S. A, s
    语法        例子
    , Z: C* l" B( J# A3 Omirror:true GNOME        匹配作为镜像且包含单词“GNOME”的存储库: ?  M  ^% W% l! b5 w
    mirror:false GNOME        匹配非镜像且包含“GNOME”一词的存储库
    # P5 Y* R# g; n3 t7 I, I3.2. 搜索主题
    ! f  h) ~5 S% j6 ]2 P; e/ _3.2.1. 使用搜索限定符缩小搜索范围
    ; C$ |6 ?+ Y7 ]2 t7 D; i: d语法        例子
    5 {" N, b/ m3 d7 fis:curated javascript        匹配经过策划并包含“javascript”一词的主题( t4 A' l1 S& p. o9 V1 ]5 j& x
    is:featured javascript        匹配https://github.com/topics/上的特色主题并包含“javascript”一词
    3 ]% u+ @+ B. ]4 r6 F+ Q7 his:not-curated javascript        匹配没有额外信息(例如描述或徽标)并包含“javascript”一词的主题
    , l; I9 W6 \9 p* l. _0 {is:not-featured javascript        匹配https://github.com/topics/上没有特色且包含“javascript”一词的主题: d: }9 E" F# z  h& A
    repositories:>5000        匹配具有超过 5000 个存储库的主题
    3 b, D, {6 E- n1 t2 m, @3.3. 搜索代码
    $ c* w$ O( i5 v/ `  _序号        代码搜索的注意事项:由于搜索代码的复杂性,对搜索的执行方式有一些限制6 Y6 Q- j5 `  b+ q, b1 ?
    1        必须登录 GitHub 上的用户帐户才能在所有公共存储库中搜索代码
    # _8 U  o1 l7 e- b9 f3 f( G) f2        只有当分叉的星数多于父存储库时,分叉中的代码才可搜索。星号少于父存储库的分叉不会为代码搜索编制索引。要在搜索结果中包含星数多于父级的分叉,您需要将fork:true或添加forknly到您的查询中。有关更多信息,请参阅“在分叉中搜索”) K3 @( h- s6 s$ P2 r: P
    3        仅对默认分支进行索引以进行代码搜索
    / }; d4 Q, u, t0 ]' s; S4        只能搜索小于 384 KB 的文。
    . ~  V3 r8 K8 X; G2 g5        只能搜索少于 500,000 个文件的存储库
    $ K+ g9 V# I/ D9 j' u6        只有在去年有活动或在搜索结果中返回的存储库才可搜索  K2 l) {) J' W, M
    7        除了filename搜索之外,在搜索源代码时,您必须始终包含至少一个搜索词。例如,搜索language:javascript无效,而搜索无效amazing language:javascript) M8 w/ @3 t# O2 E
    8        搜索结果最多可以显示来自同一个文件的两个片段,但文件中可能会有更多的结果! A' t. e4 y$ G
    9        您不能在搜索查询中使用以下通配符:. , : ; / \ ` ’ " = * ! ? # $ & + ^
    % u* `/ b& Z0 F3.3.1. 按文件内容或文件路径搜索2 Z( B) B: I% b4 ]3 O
    语法        例子
    0 K7 @7 Z$ j& M5 `: Y! `octocat in:file        匹配文件内容中出现“octocat”的代码
    6 c6 L7 m- y& c. goctocat in:path        匹配文件路径中出现“octocat”的代码8 B' t0 _; R  T' |3 x
    3.3.2. 在用户或组织的仓库中搜索
    ; T0 K2 ^( r; s8 Y8 s& T语法        例子: |3 i3 v0 Q) \  W- u0 v
    user:defunkt extension:rb        匹配来自@defunkt 的以.rb结尾的代码
    " f0 B  H7 F( j/ Porg:github extension:js        匹配来自 GitHub 的以.js结尾的代码
    : C+ Y4 i+ Z# c8 v( m& R6 U5 v+ [  Urepo:mozilla/shumway extension:as        匹配@mozilla 的 shumway 项目中以.as结尾的代码
    / l/ g$ \: _" J) Z" R" Y3.3.3. 按语言搜索! j+ r! `+ B. j1 ^0 {
    语法        例子! y- c' P4 |- i0 U7 {  U
    element language:xml size:100        匹配带有标记为 XML 且正好有 100 个字节的单词“element”的代码
    ) C1 z+ D. w$ M7 A6 n5 h( ydisplay language:scss        匹配带有单词“display”的代码,它被标记为 SCSS
    ; j3 y" r& I" ^& ]8 l) Uorg:mozilla language:markdown        匹配所有@mozilla 存储库中标记为 Markdown 的代码
    . G  _% `7 M+ L8 D0 f3.3.4. 按文件大小搜索3 ?/ s* Y* i" o5 z0 @
    语法        例子
    + l- B" ^- b% o" R9 S; m2 g% ~0 @function size:>10000 language:python        匹配用 Python 编写的大于 10 KB 的文件中带有“function”一词的代码
    / L- @9 s# p4 S3.3.5. 按文件名搜索; k2 b+ @3 [0 e7 {3 \
    语法        例子
    3 {" Z" |) m3 v' ifilename:linguist        匹配名为“linguist”的文件" d" N% r4 F8 p/ x# P- ~
    filename:.vimrc commands        匹配带有 “commands” 一词的.vimrc文件。
    % ?7 W  q' @) k) |+ b3.4. 搜索用户
    5 K/ n+ V8 i  i! q3.4.1. 按帐户名称、全名或公共电子邮件搜索
    ' I% s; d, e( [: ]5 R语法        例子
    - |3 I2 w3 D$ `3 Duserctocat        匹配用户名为“octocat”的用户1 C2 u" G4 h1 ~. m
    org:electron type:users        匹配 Electron 组织的账户名
    , v3 c; G8 J& K0 z6 a1 w% u& @kenya in:login        匹配用户名中包含“kenya”一词的用户
    5 j' N/ E. m7 X" n/ _* U4 v9 a- Qbolton in:name        匹配真实姓名中包含单词“bolton”的用户9 |# }& t; ^6 e
    fullname:Nat Friedman        匹配全名“Nat Friedman”的用户。注意:此搜索限定符对间距敏感。
    ) v9 }: }. z3 wdata in:email        将用户与电子邮件中的“data”一词匹配起来
    ( g+ Q; M) J  `: P2 w1 D, t- K3.4.2. 按用户拥有的仓库数量搜索& @( ~" Y3 F1 O8 b
    语法        例子
    * _; Y. z4 F/ `  x  brepos:>9000        匹配存储库数量超过 9,000 的用户6 z# |/ P* e0 U3 B4 w) ~! C
    bert repos:10…30        匹配用户名或真实姓名中包含“bert”一词且拥有 10 到 30 个存储库的用户
    ! {+ ]5 M' L3 v, V3.4.3. 按创建用户帐户的时间搜索
    + H& N% }; Z5 k9 B, I& C语法        例子
    ) n4 p, X" d/ Ccreated:<2011-01-01        匹配 2011 年之前加入的用户. ?4 w; A0 d0 \( S' U2 U1 O
    created:>=2013-05-11        匹配在 2013 年 5 月 11 日或之后加入的用户
    & a5 Q- `- i% t: }created:2013-03-06 location:london        匹配于 2013 年 3 月 6 日加入且将其位置列为伦敦的用户6 h/ W! M& i- |- F
    created:2010-01-01…2011-01-01 john in:login        匹配在 2010 年到 2011 年之间加入且用户名中包含单词“john”的用户
    $ [- n0 B' b$ H8 E5 ~- j3.4.4. 按关注者数量搜索
    3 O% t1 a! s" Z- x2 a语法        例子
    " Y, S/ R/ ]1 Y% b( Efollowers:>=1000        匹配拥有 1,000 或更多关注者的用户
    ) ~( ?. R5 N: z9 Esparkle follower:1…10        匹配拥有 1 到 10 个关注者的用户,他们的名字中带有“sparkle”这个词
    3 |  W  E: }4 A; z6 h————————————————
    0 o/ `) k' j4 t5 W6 U+ l) |版权声明:本文为CSDN博主「Jack·Kwok」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。( J! E+ I9 X6 S
    原文链接:https://blog.csdn.net/PaperJack/article/details/118543980/ O2 U. O" K" P" k+ E+ D7 {7 y* Q
    , B. {+ E( R' h. p$ ?% \
    ) x/ w& F2 v( G- Y3 `! U" ]! C
    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 22:08 , Processed in 0.472125 second(s), 55 queries .

    回顶部