QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3744|回复: 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
    + u/ W" k, D  Z3 g" g& n8 ~0 F! Y
    73个GitHub高级搜索技巧8 j. @9 o. Y8 V( Y8 Q6 B
    73个GitHub高级搜索技巧
    ! J3 @" s) n# T1. 前言
    3 J  m  d( ]5 q# d: s# h; O2. 排序搜索结果
    . K& y% b) ~/ W# b0 ^7 l2.1. 按交互排序
    6 G1 ~0 i: L7 ~( }/ C' c3 v2.2. 按反应排序
    * T! R; a  ]' {7 S8 F2.3. 按作者日期排序3 m: O) a: L6 B4 U/ ]" y
    2.4. 按提交者日期排序- V, l) R$ k9 R/ r) _
    2.5. 按更新日期排序
    # r+ q0 S* ]( k) I* l& w3. 搜索范围) h4 ~# ]$ K2 T$ x
    3.1. 搜索存储库
    * e- m) m' F" b% z8 ?; o0 A" E3.1.1. 按存储库名称、描述或 README 文件的内容搜索
    0 S% @9 w, s1 A* p; W) X% N3.1.2. 在用户或组织的仓库中搜索% X0 q) h- T  F8 P% ]* F. i8 c8 \" o  Z
    3.1.3. 按存储库大小搜索
    " Y& O! S4 j! w$ B/ s1 W; T2 f3.1.4. 按分叉数搜索* ?) [" d3 ~- U1 A5 M; c
    3.1.5. 按星数搜索& I$ Y; V3 M+ Q! R! {! f
    3.1.6. 按创建或上次更新存储库的时间搜索1 e  ]- \- @. Z) M+ U4 }
    3.1.7. 按语言搜索- K# D6 G  T; M* S, R3 b
    3.1.8. 按主题搜索
    + @( C2 F1 m* Q4 q7 ~" m3.1.9. 按主题数量搜索
    - o4 }3 x$ C3 w" P4 K8 [3.1.10. 按许可证搜索6 O  ?! H6 l; N' `
    3.1.11. 按存储库可见性搜索
    " k7 T& l% Q2 J. l3.1.12. 根据仓库是否是镜像进行搜索# I5 ?9 G+ _. t: a1 s- x5 h
    3.2. 搜索主题
    4 o8 o. `0 ^5 p$ |1 R3.2.1. 使用搜索限定符缩小搜索范围
    # K; a+ P4 m/ |4 I; P' \3.3. 搜索代码
    ) n2 Y6 ]- L3 ^! Y3.3.1. 按文件内容或文件路径搜索
    . e3 ]# U1 q6 v3.3.2. 在用户或组织的仓库中搜索
    8 c1 d# P: d" C3.3.3. 按语言搜索9 M* u% e* M6 z- |
    3.3.4. 按文件大小搜索- n0 S4 x% k5 h- v- C
    3.3.5. 按文件名搜索
    ; f* d+ I6 `3 B6 [3.4. 搜索用户/ l% u; e$ o" `5 B  `
    3.4.1. 按帐户名称、全名或公共电子邮件搜索
    % B. i. G  I& Y5 y3.4.2. 按用户拥有的仓库数量搜索
    : C8 S+ ?5 M7 y3 X3 D" Z7 Q3.4.3. 按创建用户帐户的时间搜索* _9 U8 K* t4 t; m) W  q4 x8 A
    3.4.4. 按关注者数量搜索
    * t" p4 i3 \3 C5 y1. 前言
    + X- l' T. ]  W' n% @& sGitHub的搜索功能绝不仅仅是单纯匹配你输入的内容,而是有如下匹配规则。9 E6 t9 X; O- ^
    2 _) F3 v: a" z3 N

    ' t- y3 Z# E5 @0 K2 O( t0 F9 ^本文参考自GitHub官方文档。  B) D% H* G1 B& c' ^$ e# [1 T
    GitHub官方文档:https://docs.github.com/en
    / Z7 k% d$ D# q! _/ I% l" ~& n
    7 Q& y7 o0 {% i/ I, O
    7 u4 U/ n  E$ T  `* Y; F

    4 w& P6 \/ J2 _- A2 r# I
    ) p$ C% h, ~0 q5 Y
    本文第3点总结了目前GitHub搜索最常用的技巧,根据我们平时搜索的内容分为了搜索存储库、搜索主题、搜索代码和搜索用户四个小点,你可以根据自己想要的搜索内容定位到每个小点,同时第2点总结了将你搜索到的结果按照什么排序顺序排序,包括交互排序、反应排序、作者日期排序、提交者日期排序、更新日期排序等。0 O6 e$ W7 b  D8 F  h' ?
    # g4 m$ A6 k0 w, n9 N

    ! h) W. f5 v1 C# F+ x2. 排序搜索结果
    0 S! b, [' _5 T2.1. 按交互排序1 E/ a" P2 M: m. Z- q7 }) a% }
    语法        例子: ?/ Q# p/ w) z3 w4 r0 a, |# N* \/ X
    org:github sort:interactions        匹配 GitHub 拥有的存储库中的问题,按反应和评论的最高组合数排序; k0 I! d( l  L2 u
    org:github sort:interactions-asc        匹配 GitHub 拥有的存储库中的问题,按最少的反应和评论组合数排序
    5 D" B9 T8 h+ y" e% J' L6 w2.2. 按反应排序
    1 V1 M# `. o6 D+ f' }+ a7 z7 j语法        例子9 |$ ~# d( I; H2 I* [2 Y
    org:github sort:reactions        匹配 GitHub 拥有的存储库中的问题,按最高反应数排序。4 o9 U) k4 w7 B* {
    org:github sort:reactions-asc        匹配 GitHub 拥有的存储库中的问题,按反应数量升序排序(从最少到最多); n6 N5 T8 K5 M8 D
    org:github sort:reactions-+1        匹配 GitHub 拥有的存储库中的问题,按最多点赞 (👍) 反应排序
    ) F- e: Z( ~7 Borg:github sort:reactions- -1        匹配 GitHub 拥有的存储库中的问题,按最多 (👎) 反应排序2 v0 H' j/ M  a5 q- M8 y5 Y3 [6 o
    org:github sort:reactions-smile        匹配 GitHub 拥有的存储库中的问题,按最多笑 (😄) 反应排序
    6 }+ C4 r6 q; Vorg:github sort:reactions-tada        匹配 GitHub 拥有的存储库中的问题,按大多数欢呼 (🎉) 反应排序: }2 h5 o6 V( `9 V9 ~& g, C
    org:github sort:reactions-heart        匹配 GitHub 拥有的存储库中的问题,按大多数心脏 (❤️) 反应排序
    ! d$ e9 I. d; r' c+ x; o( K2.3. 按作者日期排序. B. \% P) U4 E' K, n0 @
    语法        例子
    4 J9 c/ e- i7 t; z/ Aorg:github sort:author-date feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期降序排序7 u9 F/ Z4 J0 }
    org:github sort:author-date-asc feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期升序排序
    : j+ L: t; f, A0 E: U, r  d+ I3 e; ^  o2.4. 按提交者日期排序
    . V; O5 N1 F' H0 C' t; \' A语法        例子$ o$ X2 D5 \" w" S5 T& a
    org:github sort:committer-date        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期降序排序: o+ R" T: c. ~& l0 }
    org:github sort:committer-date-asc        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期升序排序
    / `. O" `9 ?4 q9 z& e- y% `2.5. 按更新日期排序9 [& U, N3 m9 o. M4 j
    语法        例子
    4 [7 n- _0 U' H( f7 m+ n( s7 G1 t9 `sort:updated feature        匹配包含“feature”一词的存储库,按最近更新日期排序! ]; j3 B1 ]" C5 y$ n( t! t6 x: W# U* B
    sort:updated-asc feature        匹配包含单词“feature”的存储库,按最近更新日期排序
    $ S4 o8 ~) [/ i  K+ z7 @& m8 ?. n) g3. 搜索范围+ i/ s- T' t% S
    3.1. 搜索存储库
    $ C6 Z& Z5 `6 A  {4 x3.1.1. 按存储库名称、描述或 README 文件的内容搜索
    9 W. I' H/ h: p语法        例子
    + R- W/ E; [6 e% ^* h; R& gin:name jquery        匹配存储库名称中带有“jquery”的存储库。# k1 W9 D  U+ B; B
    in:description jquery        匹配存储库描述中带有“jquery”的存储库。1 y4 e5 |: f2 n3 ], J5 E8 K- ]
    in:readme jquery        匹配存储库的 README 文件中提到“jquery”的存储库。
    % _* @# R! o7 w4 x3.1.2. 在用户或组织的仓库中搜索
    & B: V2 e3 i( E, q3 }1 O/ n语法        例子; Z  m0 R, G; M" p% z
    user:defunkt forks:>100        匹配用户名为 defunkt 的具有超过 100 个 fork 的存储库。
    ; \$ b$ G2 B" p0 d3 v" e3.1.3. 按存储库大小搜索& o# b" B. u- \) w! L9 P. n& R, s
    语法        例子
    " M3 F6 I6 e0 rsize:1000        匹配大小为 1 MB 的存储库
    - ?# X, M, @" m/ G% }8 k" e5 e/ osize:>=30000        匹配至少 30 MB 的存储库
    2 s& b& b: B1 Y! C8 n8 Psize:<50        匹配小于 50 KB 的存储库
    0 a9 o% K! z) Y4 @& _size:50…120        匹配 50 KB 到 120 KB 之间的存储库
    5 p# {8 B; \) |* U' Q& f! j3.1.4. 按分叉数搜索
    ) l8 F+ Q8 ?# V  y语法        例子$ p# Z" U, r+ Z7 o* x: B4 `
    forks:5        匹配只有五个 fork 的存储库
    . u* H+ X" X" b0 \! V& aforks:>=205        匹配至少有 205 个 fork 的仓库, ]2 M2 H$ k' w
    forks:<90        匹配具有少于 90 个 fork 的存储库
    ) ]( V6 w3 z' y( i6 j  @3 [8 ]forks:10…20        匹配具有 10 到 20 个 fork 的存储库
    ( A6 f6 }1 H2 x- U3.1.5. 按星数搜索
    3 s5 o5 a/ u  K5 O/ o语法        例子( [  ?2 j3 O! x' A; v3 x1 A" I  D5 \
    stars:500        匹配恰好有 500 颗星的存储库: g. t' ?/ j: W/ h
    stars:10…20        匹配小于 1000 KB 的 10 到 20 星的存储库
    ) N1 `; O3 g- Z/ ?stars:>=500 fork:true language:php        匹配至少 500 个星的存储库,包括分叉的,用 PHP 编写的
    . k7 D! \2 O4 S5 i! y2 R3.1.6. 按创建或上次更新存储库的时间搜索/ Y3 I8 c' S/ t7 m2 {0 c
    语法        例子9 S- ^: h& n! A  U" ^
    webos created:<2011-01-01        匹配 2011 年之前创建的带有“webos”一词的存储库, ?. k7 a% Y* p  Z! W
    css push:>2013-02-01        匹配 2013 年 1 月之后推送到的带有“css”一词的存储库
    " q( @4 B; @; \: b# O; scase push:>=2013-03-06 forknly        匹配 2013 年 3 月 6 日或之后推送到的带有单词“case”的存储库,并且是分叉。/ I1 @% A% F  J. z7 W, Y: ?
    3.1.7. 按语言搜索8 t: M, W9 H3 p" i6 B
    语法        例子
    % m: U9 I- ~' h2 X8 B9 nrails language:javascript        匹配使用 JavaScript 编写的带有“rails”一词的存储库
    1 G; W- I0 l* u  T) W' b0 u3.1.8. 按主题搜索% F- L0 T' t; y5 P- g! p; P; a
    语法        例子4 F; h5 d$ ^5 A
    topic:jekyll        匹配已分类为主题“jekyll”的存储库
    6 }' h! b, d9 f4 k. D$ x3.1.9. 按主题数量搜索
    ' ~5 t2 K8 ]$ E! f语法        例子
    - T# A, m* @# W" U( ~( Y1 \9 etopic:5        匹配具有五个主题的存储库# k- v1 w* E& K7 W  o, a  e
    topic:> 3        匹配具有三个以上主题的存储库5 H# g2 X6 c$ s2 U- t- a  O7 ?! I
    3.1.10. 按许可证搜索" L- F( }: n# w3 V
    语法        例子) }. o) x# H% ^; G2 W) |: v- G
    license:apache-2.0        匹配在 Apache License 2.0 下获得许可的存储库& [4 ^+ g$ ~/ }3 @; {
    3.1.11. 按存储库可见性搜索8 W: p3 Q" r0 A9 t. F3 E
    语法        例子6 L; H  a7 K! C: l5 H0 I6 E
    is:public org:github        匹配 GitHub 拥有的公共存储库
    5 z9 G+ I# z! S# ^is:internal test        匹配您可以访问并包含“test”一词的内部存储库" t8 W2 x8 H7 J1 p: v# M: ^
    is:private pages        匹配您可以访问并包含“pages”一词的私有存储库7 }1 U; ?, T4 o9 `4 j
    3.1.12. 根据仓库是否是镜像进行搜索
    - E  ?5 |4 U6 R1 [2 j语法        例子" Z( N' b- @) y* b* i9 b
    mirror:true GNOME        匹配作为镜像且包含单词“GNOME”的存储库
    5 D( ?+ f/ \" J6 A8 Nmirror:false GNOME        匹配非镜像且包含“GNOME”一词的存储库$ d8 M2 C) H* A) V: c# }
    3.2. 搜索主题% z* u* @+ o9 G+ r: T
    3.2.1. 使用搜索限定符缩小搜索范围7 `" F+ l  v7 k" p' n+ n2 t7 Q
    语法        例子
    6 M" g4 `; ]) w( \6 f/ bis:curated javascript        匹配经过策划并包含“javascript”一词的主题" K1 D7 R7 g  N+ o, X5 h% J+ b; i
    is:featured javascript        匹配https://github.com/topics/上的特色主题并包含“javascript”一词
    ; Y1 \" @# A- w9 y; ~; ?( z; iis:not-curated javascript        匹配没有额外信息(例如描述或徽标)并包含“javascript”一词的主题
    1 L7 v" g. q  F, J! q4 U6 gis:not-featured javascript        匹配https://github.com/topics/上没有特色且包含“javascript”一词的主题
    ; }- m; w: H/ h+ }repositories:>5000        匹配具有超过 5000 个存储库的主题
    ; K9 p: ~/ G6 u( V, Q3.3. 搜索代码
    * A9 S/ ^, R$ w) J序号        代码搜索的注意事项:由于搜索代码的复杂性,对搜索的执行方式有一些限制
    * r6 P* M& f$ J  L* ~; E1        必须登录 GitHub 上的用户帐户才能在所有公共存储库中搜索代码" O& J( l9 L8 P" @0 Z% d
    2        只有当分叉的星数多于父存储库时,分叉中的代码才可搜索。星号少于父存储库的分叉不会为代码搜索编制索引。要在搜索结果中包含星数多于父级的分叉,您需要将fork:true或添加forknly到您的查询中。有关更多信息,请参阅“在分叉中搜索”% n- C4 t# m0 o7 W
    3        仅对默认分支进行索引以进行代码搜索; u( j6 M1 ~7 N
    4        只能搜索小于 384 KB 的文。, ]6 H6 R/ v% l) y, v
    5        只能搜索少于 500,000 个文件的存储库
    " P! ]2 P$ J9 j0 I6        只有在去年有活动或在搜索结果中返回的存储库才可搜索2 @+ T' a7 S3 o
    7        除了filename搜索之外,在搜索源代码时,您必须始终包含至少一个搜索词。例如,搜索language:javascript无效,而搜索无效amazing language:javascript
    6 o  _5 }3 T( D" S; }  o8        搜索结果最多可以显示来自同一个文件的两个片段,但文件中可能会有更多的结果
    & T+ D# L9 X1 U0 s5 ]; W9        您不能在搜索查询中使用以下通配符:. , : ; / \ ` ’ " = * ! ? # $ & + ^4 C$ h  Q. u  Q3 t0 q8 M
    3.3.1. 按文件内容或文件路径搜索1 Y$ Z$ `& W; O  P
    语法        例子
    / V0 B" J( p5 t: [( zoctocat in:file        匹配文件内容中出现“octocat”的代码9 M9 B6 I1 C; v7 [6 E- n2 q
    octocat in:path        匹配文件路径中出现“octocat”的代码; ?2 w7 K; G  K* J+ x& I1 G
    3.3.2. 在用户或组织的仓库中搜索
    : q4 w" y3 x3 Z- p, D- }( }语法        例子
    + F3 r  D& i8 f( q1 A* g+ S2 Euser:defunkt extension:rb        匹配来自@defunkt 的以.rb结尾的代码
    + g. c* I, E: Z  ?6 N: Norg:github extension:js        匹配来自 GitHub 的以.js结尾的代码
    * Q4 T# @$ ~' {0 m! Qrepo:mozilla/shumway extension:as        匹配@mozilla 的 shumway 项目中以.as结尾的代码
    ) A: V3 i& e; M3.3.3. 按语言搜索9 j/ f: z9 Z+ R, J, |
    语法        例子
    + w) j9 C) N4 y* c3 L' Z+ _/ P1 kelement language:xml size:100        匹配带有标记为 XML 且正好有 100 个字节的单词“element”的代码
      ^! _; l- V( e' k! F* U6 r2 |; Cdisplay language:scss        匹配带有单词“display”的代码,它被标记为 SCSS0 K# ^$ b" Y& _& h
    org:mozilla language:markdown        匹配所有@mozilla 存储库中标记为 Markdown 的代码
    ; Q; k) s5 c! D% F  ^4 ?3.3.4. 按文件大小搜索( Z/ w% T% I1 O, s4 G
    语法        例子" o% o7 D3 E* @; P8 u
    function size:>10000 language:python        匹配用 Python 编写的大于 10 KB 的文件中带有“function”一词的代码
    4 H' K- B8 k# a! K3 G4 F3.3.5. 按文件名搜索
    # H" V3 u: k. E语法        例子% g" a$ g# K9 i
    filename:linguist        匹配名为“linguist”的文件6 `' b; M% r$ |1 O
    filename:.vimrc commands        匹配带有 “commands” 一词的.vimrc文件。
    ; r5 l. `6 Q% _* a  U3.4. 搜索用户
    - S5 z5 L7 \9 T( H5 B- S6 o* a3.4.1. 按帐户名称、全名或公共电子邮件搜索
    3 f7 h8 H; {- D! ~8 _语法        例子
    5 y+ i; A* H, q" I5 Tuserctocat        匹配用户名为“octocat”的用户
    $ B) Z) v, x) y% i5 M7 Korg:electron type:users        匹配 Electron 组织的账户名) @3 `- a% w1 o4 v
    kenya in:login        匹配用户名中包含“kenya”一词的用户
    ) W% u6 V6 y. j/ h, Jbolton in:name        匹配真实姓名中包含单词“bolton”的用户. }  w: {* H+ w" {/ ?0 O+ f
    fullname:Nat Friedman        匹配全名“Nat Friedman”的用户。注意:此搜索限定符对间距敏感。
    * f; O2 a2 v$ U: X* a2 {% q% ~1 jdata in:email        将用户与电子邮件中的“data”一词匹配起来2 A$ q7 T- ~- F& V7 t1 I# X3 w
    3.4.2. 按用户拥有的仓库数量搜索
    ( A; r. M: ]% t. `0 J语法        例子  ^- [$ i- r: c% d
    repos:>9000        匹配存储库数量超过 9,000 的用户0 a/ I) Q! N( ]% O
    bert repos:10…30        匹配用户名或真实姓名中包含“bert”一词且拥有 10 到 30 个存储库的用户/ I6 Q7 l: P+ C9 u
    3.4.3. 按创建用户帐户的时间搜索5 [2 v1 d9 d* b6 U- @5 f
    语法        例子9 e4 \8 E) B4 P; P0 x( _" t
    created:<2011-01-01        匹配 2011 年之前加入的用户
      i* w% }& d! w  A5 ~created:>=2013-05-11        匹配在 2013 年 5 月 11 日或之后加入的用户4 z! W# M! R6 l) `# |" N0 [) d
    created:2013-03-06 location:london        匹配于 2013 年 3 月 6 日加入且将其位置列为伦敦的用户7 U3 \1 \4 b, T7 ]
    created:2010-01-01…2011-01-01 john in:login        匹配在 2010 年到 2011 年之间加入且用户名中包含单词“john”的用户  U1 H! {" j. L' U- x
    3.4.4. 按关注者数量搜索
    , i$ X0 k6 t# ]1 s  u语法        例子' [' B( p- K) w/ B" M; x: F9 j
    followers:>=1000        匹配拥有 1,000 或更多关注者的用户
    ) j% a3 |. ~! b6 A/ Qsparkle follower:1…10        匹配拥有 1 到 10 个关注者的用户,他们的名字中带有“sparkle”这个词
    ' H) e# h' p9 p0 T————————————————
    9 ], ~8 T! S5 [" T版权声明:本文为CSDN博主「Jack·Kwok」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    1 s8 W; ]2 Q, e  v" M* q) V! q# Q原文链接:https://blog.csdn.net/PaperJack/article/details/118543980
    ' p, R* r) s" A* G" @9 s9 L9 w1 B% W# y

    1 @( g$ y+ a/ |1 |4 F
    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-6-20 17:46 , Processed in 3.150340 second(s), 56 queries .

    回顶部