QQ登录

只需要一步,快速开始

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

    , p3 N; @$ _6 z% ]  g4 i73个GitHub高级搜索技巧1 D) G- w4 t) Y
    73个GitHub高级搜索技巧5 v, u: V* J' Z) W( q) j0 Q
    1. 前言
    9 n0 W. U( q8 b9 j2. 排序搜索结果+ N6 t5 P: O) u2 n7 \! T3 u
    2.1. 按交互排序
    " y+ _8 L6 N9 x# E2 m+ A) H& t2.2. 按反应排序
    ( J4 X1 Q' F5 P- K8 F2.3. 按作者日期排序$ Z' q& V, A! [& Y6 b% y6 o
    2.4. 按提交者日期排序
    6 d  C! e  z  S" i+ w2.5. 按更新日期排序1 o# y9 y) x. y) s+ J/ r% ~1 X
    3. 搜索范围/ j3 J  M6 u1 X/ o& T: T
    3.1. 搜索存储库2 i: M. x8 }# N7 }. Y! X( f; V
    3.1.1. 按存储库名称、描述或 README 文件的内容搜索
    # D+ ^% p% }* l" g3.1.2. 在用户或组织的仓库中搜索
    " M# Z% a7 f" n3.1.3. 按存储库大小搜索
    1 x  w: b( I4 B0 V% H3.1.4. 按分叉数搜索
    7 A2 z4 c; l/ u- n' U) a3.1.5. 按星数搜索4 A* j% ~  @9 g% m( P- a
    3.1.6. 按创建或上次更新存储库的时间搜索' _* a" j4 m# Q( m
    3.1.7. 按语言搜索
    3 ~9 {/ e! Q, n; m0 j. l3.1.8. 按主题搜索2 b! s  r2 P9 k2 R  Y! g6 J! V- M
    3.1.9. 按主题数量搜索7 Z- |. t, \$ @  T
    3.1.10. 按许可证搜索
    & ^; h: y) _; x! r0 q6 a! J3.1.11. 按存储库可见性搜索' z" l2 v+ i2 v/ Z' E8 ^# E- C% y( i
    3.1.12. 根据仓库是否是镜像进行搜索: q& T3 J- Z( y8 J7 P, g9 m
    3.2. 搜索主题/ D" O* e& h9 H: |% G
    3.2.1. 使用搜索限定符缩小搜索范围
    $ a: v# J( q9 K+ N2 R3.3. 搜索代码
    * D' q! Z* k# g" Z$ e3.3.1. 按文件内容或文件路径搜索- e6 n7 ^! ^3 l, [! Q* }
    3.3.2. 在用户或组织的仓库中搜索: f8 Y6 v1 J$ Y: o, ^; w
    3.3.3. 按语言搜索: e8 Q7 g- C0 x8 i( s) s  \9 s" i
    3.3.4. 按文件大小搜索* k; F# M+ u1 \) m% ~. o: P/ b
    3.3.5. 按文件名搜索
    & i9 a* a2 o& S; F- D0 C3.4. 搜索用户
    ; n3 M# y# L/ H" s: P3.4.1. 按帐户名称、全名或公共电子邮件搜索
    , B+ a' [! B, y3 A4 L5 t! B" d8 u3.4.2. 按用户拥有的仓库数量搜索
    ; p8 i; g4 X( l$ m5 W3.4.3. 按创建用户帐户的时间搜索8 s. b# y. q0 H" j! n% R3 P
    3.4.4. 按关注者数量搜索
    2 e9 ?5 F% P5 u9 \1. 前言3 V1 c8 `# J! @% ^: b; a
    GitHub的搜索功能绝不仅仅是单纯匹配你输入的内容,而是有如下匹配规则。
    / _" {" ^) h) b$ d
    4 v6 W. A( o) X6 J
    $ e4 b( E/ l+ z. o# y
    本文参考自GitHub官方文档。8 O, [) U* ]) g& |$ k
    GitHub官方文档:https://docs.github.com/en1 Y, N% C+ G9 e, ^9 M* q5 M
    " g' E; g* {+ a
    6 D/ b# N" Y. z% G, t) ~. Y
      b1 I( o# E- X/ J

    8 I. O1 W3 u/ S7 P7 C: c本文第3点总结了目前GitHub搜索最常用的技巧,根据我们平时搜索的内容分为了搜索存储库、搜索主题、搜索代码和搜索用户四个小点,你可以根据自己想要的搜索内容定位到每个小点,同时第2点总结了将你搜索到的结果按照什么排序顺序排序,包括交互排序、反应排序、作者日期排序、提交者日期排序、更新日期排序等。+ m9 m7 d( X3 l9 I
    + N6 [- N* Z6 S. Y( A

    % _4 p) V: I, U3 ^2. 排序搜索结果# x- \& u2 a7 d) |
    2.1. 按交互排序
    ! {  F1 s( N1 t9 w3 V6 j) c  k语法        例子7 l* g% Z0 H" t) X# `; h
    org:github sort:interactions        匹配 GitHub 拥有的存储库中的问题,按反应和评论的最高组合数排序$ U( N# U1 h6 w  S+ B: J
    org:github sort:interactions-asc        匹配 GitHub 拥有的存储库中的问题,按最少的反应和评论组合数排序& q2 X$ j6 V4 S# E$ Y
    2.2. 按反应排序& q, {4 ?- h, G! ]
    语法        例子
    ' M$ ~( o/ ^$ L+ h0 Torg:github sort:reactions        匹配 GitHub 拥有的存储库中的问题,按最高反应数排序。, T8 W$ Y( A( Q3 ^- M  x6 I0 O! c
    org:github sort:reactions-asc        匹配 GitHub 拥有的存储库中的问题,按反应数量升序排序(从最少到最多)
    . C; J8 Q+ s1 ?  K6 q% t# L# k; V$ K: sorg:github sort:reactions-+1        匹配 GitHub 拥有的存储库中的问题,按最多点赞 (👍) 反应排序
    ! y& A5 U) t, y% O8 o  b2 porg:github sort:reactions- -1        匹配 GitHub 拥有的存储库中的问题,按最多 (👎) 反应排序
    $ w& i0 _+ M! v6 Corg:github sort:reactions-smile        匹配 GitHub 拥有的存储库中的问题,按最多笑 (😄) 反应排序
    0 k0 K& Z: F& U; z+ X  @org:github sort:reactions-tada        匹配 GitHub 拥有的存储库中的问题,按大多数欢呼 (🎉) 反应排序
    , i" F! O; p' {+ uorg:github sort:reactions-heart        匹配 GitHub 拥有的存储库中的问题,按大多数心脏 (❤️) 反应排序
    / }# r) R9 T( o  P0 K$ f2.3. 按作者日期排序
    ) P8 s! |" d5 x, d7 N语法        例子7 ]* Q$ T9 l: x4 _
    org:github sort:author-date feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期降序排序
    * ?4 G5 f9 e$ s% |org:github sort:author-date-asc feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期升序排序
    # R8 y3 N4 a& G, J" ^4 ~& S+ r2.4. 按提交者日期排序
    0 Y" M: t  ]# L8 j, ^0 u语法        例子' y+ I* z9 D, J" U
    org:github sort:committer-date        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期降序排序- ^) \  T: ^' I& Y' _5 q
    org:github sort:committer-date-asc        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期升序排序. \' _* F# j% j% r
    2.5. 按更新日期排序
    $ q6 a4 Y! J1 i+ w3 Z1 M语法        例子
    3 K8 p+ b# u! u% _# C& g" d5 Nsort:updated feature        匹配包含“feature”一词的存储库,按最近更新日期排序
    ! Y8 K8 ^) ~" Z" q+ C3 L. v" U- H* Xsort:updated-asc feature        匹配包含单词“feature”的存储库,按最近更新日期排序! h  Y' X0 v  |8 U8 b! T
    3. 搜索范围8 W( ?" P" G9 ^" h' j6 w
    3.1. 搜索存储库
    ) \) M* G. \6 a3.1.1. 按存储库名称、描述或 README 文件的内容搜索$ z: }; O. s  F, i, o
    语法        例子
    & g3 ?( }4 p& R0 a1 [& h% |6 @in:name jquery        匹配存储库名称中带有“jquery”的存储库。& h/ C& f( t  [3 _
    in:description jquery        匹配存储库描述中带有“jquery”的存储库。- _3 h6 _% j0 T  a7 |! ]& G& Y) J8 g
    in:readme jquery        匹配存储库的 README 文件中提到“jquery”的存储库。
    , {( k9 V6 V6 m+ ^, H1 C% L3.1.2. 在用户或组织的仓库中搜索- f& `2 G0 B8 i* G
    语法        例子
    + k2 j* O3 @/ l( x$ Euser:defunkt forks:>100        匹配用户名为 defunkt 的具有超过 100 个 fork 的存储库。" u  [( r* l. R& n
    3.1.3. 按存储库大小搜索
    9 T( c# ]! \2 [3 Y6 Q语法        例子3 ?" k; U/ {8 f. H0 n
    size:1000        匹配大小为 1 MB 的存储库# n$ u9 }: ~# h5 X9 ^6 e
    size:>=30000        匹配至少 30 MB 的存储库
    2 t. N; e# H3 W- k  L. T) msize:<50        匹配小于 50 KB 的存储库
    ( N  ?$ s+ M/ j3 x8 p+ X9 Fsize:50…120        匹配 50 KB 到 120 KB 之间的存储库* F. _6 J- k& e5 P  u
    3.1.4. 按分叉数搜索
    ! N. U, S8 F9 F语法        例子
    , Z& N% H$ m) Hforks:5        匹配只有五个 fork 的存储库9 f! C6 r, t6 a; P; B  j
    forks:>=205        匹配至少有 205 个 fork 的仓库; W3 R, G% u2 u! x# O
    forks:<90        匹配具有少于 90 个 fork 的存储库) M! ]$ q. a1 Z( {$ V0 k
    forks:10…20        匹配具有 10 到 20 个 fork 的存储库
    $ a, d# @* [" q, w$ j/ y( |6 K( B2 d3.1.5. 按星数搜索
    : R! {6 M0 B. |! @& ~语法        例子
    " ^$ V# z( m' w- K" A2 l+ wstars:500        匹配恰好有 500 颗星的存储库% T, O9 h& N5 w1 B* S* i
    stars:10…20        匹配小于 1000 KB 的 10 到 20 星的存储库
    ' x* c; [  c3 bstars:>=500 fork:true language:php        匹配至少 500 个星的存储库,包括分叉的,用 PHP 编写的
      {( [5 E1 u; p4 I3.1.6. 按创建或上次更新存储库的时间搜索
    9 |! _& b2 i- `' U+ h语法        例子" p# k4 r. r8 U0 C
    webos created:<2011-01-01        匹配 2011 年之前创建的带有“webos”一词的存储库  u" e2 C6 G$ Y  V4 {3 w9 ~
    css push:>2013-02-01        匹配 2013 年 1 月之后推送到的带有“css”一词的存储库% T' T. [9 l, ^) [: e
    case push:>=2013-03-06 forknly        匹配 2013 年 3 月 6 日或之后推送到的带有单词“case”的存储库,并且是分叉。
    . a3 ?6 O+ P8 ?. h3.1.7. 按语言搜索
    * @2 q) o; l4 I" d语法        例子5 x7 T0 Q5 ^+ T# B
    rails language:javascript        匹配使用 JavaScript 编写的带有“rails”一词的存储库$ {+ Z9 _* D9 W0 i* S
    3.1.8. 按主题搜索; x7 ~9 E" S$ d
    语法        例子: w8 C! H: I9 c  y( P
    topic:jekyll        匹配已分类为主题“jekyll”的存储库/ }6 b, g5 r5 q+ b5 O0 z1 d$ w' W
    3.1.9. 按主题数量搜索' }" u  h5 K1 [+ y0 y$ m0 X& E0 [; @
    语法        例子
    9 B9 s. D5 Z' }8 jtopic:5        匹配具有五个主题的存储库
    + [* h4 p; I& h2 r! otopic:> 3        匹配具有三个以上主题的存储库
    4 H7 f' x. d1 y; }* P5 J3.1.10. 按许可证搜索
    1 g5 r0 W7 }' I5 Z3 {8 p语法        例子
    % o* J7 F1 H5 O* Ulicense:apache-2.0        匹配在 Apache License 2.0 下获得许可的存储库! V# o0 H, Q& i( \
    3.1.11. 按存储库可见性搜索
    / L8 K: M3 Z1 u8 K1 F语法        例子
    3 a. p9 Z- X1 w7 L, @3 @is:public org:github        匹配 GitHub 拥有的公共存储库
    2 j& O4 t3 T, u. X( Vis:internal test        匹配您可以访问并包含“test”一词的内部存储库( Q5 o+ S1 E+ d6 c  g
    is:private pages        匹配您可以访问并包含“pages”一词的私有存储库
    5 B- C4 e6 q: N/ S6 x3.1.12. 根据仓库是否是镜像进行搜索
    : I& @% L4 |/ w) c" e) F+ N语法        例子3 K3 }/ V" ^) d2 X% L: s9 h
    mirror:true GNOME        匹配作为镜像且包含单词“GNOME”的存储库
    * b# b8 {% q2 Z* v' o8 E  v! |mirror:false GNOME        匹配非镜像且包含“GNOME”一词的存储库& P- P. r7 ?6 Z3 v% V
    3.2. 搜索主题
    8 N! M: h6 g8 n8 [( D; _3.2.1. 使用搜索限定符缩小搜索范围- @( E7 p# S, t% I5 S
    语法        例子
    / t5 p/ u+ D, Cis:curated javascript        匹配经过策划并包含“javascript”一词的主题
    " J" y5 _; Y! p8 b8 Ris:featured javascript        匹配https://github.com/topics/上的特色主题并包含“javascript”一词
    # y* V* X0 y# G) I4 B  l. X& Tis:not-curated javascript        匹配没有额外信息(例如描述或徽标)并包含“javascript”一词的主题3 I2 S$ C! b+ Y- B1 U) L
    is:not-featured javascript        匹配https://github.com/topics/上没有特色且包含“javascript”一词的主题' L; y8 ?" A' d- X# @6 s; n
    repositories:>5000        匹配具有超过 5000 个存储库的主题
    $ L$ U1 D# M0 n7 X! t- b! g# o3.3. 搜索代码
    1 m2 Z! C( ?* h7 B' D; D序号        代码搜索的注意事项:由于搜索代码的复杂性,对搜索的执行方式有一些限制. b, Z+ a$ [/ v9 s
    1        必须登录 GitHub 上的用户帐户才能在所有公共存储库中搜索代码3 @& r% V6 O* u3 @; x
    2        只有当分叉的星数多于父存储库时,分叉中的代码才可搜索。星号少于父存储库的分叉不会为代码搜索编制索引。要在搜索结果中包含星数多于父级的分叉,您需要将fork:true或添加forknly到您的查询中。有关更多信息,请参阅“在分叉中搜索”
    2 S9 q7 j, n# \) Q0 P& y3        仅对默认分支进行索引以进行代码搜索
    $ K" y; \  W' W! W& C7 c# `4        只能搜索小于 384 KB 的文。
    $ @9 E. s: ?$ f5 M* O. b5        只能搜索少于 500,000 个文件的存储库* Y& }( M5 j" G" H) y4 R
    6        只有在去年有活动或在搜索结果中返回的存储库才可搜索
    * ?1 P* W$ v1 F8 U7 K6 @  N7        除了filename搜索之外,在搜索源代码时,您必须始终包含至少一个搜索词。例如,搜索language:javascript无效,而搜索无效amazing language:javascript( }! J& k$ }2 e
    8        搜索结果最多可以显示来自同一个文件的两个片段,但文件中可能会有更多的结果
    9 K! L! E; u; V" u; T" K9        您不能在搜索查询中使用以下通配符:. , : ; / \ ` ’ " = * ! ? # $ & + ^4 S0 v) s" \( Q6 I* A3 N5 ^! P
    3.3.1. 按文件内容或文件路径搜索' |3 E* L" h& b8 B  R  q
    语法        例子
    % R) ~9 Z* G4 ?" q3 Q" @; }octocat in:file        匹配文件内容中出现“octocat”的代码
    / c' ~+ x* O! |1 ?octocat in:path        匹配文件路径中出现“octocat”的代码
    4 T! K/ @5 S$ i( W3.3.2. 在用户或组织的仓库中搜索
    # X9 d4 ~$ U1 Z7 c' c) s+ J语法        例子
    # L+ F0 L! U9 L: W, Auser:defunkt extension:rb        匹配来自@defunkt 的以.rb结尾的代码7 G+ w1 O4 |  i
    org:github extension:js        匹配来自 GitHub 的以.js结尾的代码( b: P( \; g# X5 X' [/ p# f; j# i
    repo:mozilla/shumway extension:as        匹配@mozilla 的 shumway 项目中以.as结尾的代码
    / x8 b" w( k# n* Y: ~" z; p( \3.3.3. 按语言搜索+ \' z/ T$ o; r2 F+ O6 b+ y
    语法        例子& r( a6 T- p9 X. }( U3 o
    element language:xml size:100        匹配带有标记为 XML 且正好有 100 个字节的单词“element”的代码
    ( I3 E' J$ W0 V9 A8 X" Qdisplay language:scss        匹配带有单词“display”的代码,它被标记为 SCSS2 \) J+ g( X4 w/ A& {2 ?
    org:mozilla language:markdown        匹配所有@mozilla 存储库中标记为 Markdown 的代码1 E0 K( m# Y1 e$ O/ Z
    3.3.4. 按文件大小搜索) u+ q/ p3 J  Q7 F; _) x+ \/ J, A8 z- K
    语法        例子
    1 _4 m4 c1 A: n( Cfunction size:>10000 language:python        匹配用 Python 编写的大于 10 KB 的文件中带有“function”一词的代码
    7 o$ N0 g6 @2 n1 O  c  [9 ?. q3.3.5. 按文件名搜索! X/ g* E7 {3 I" a* k- d7 E
    语法        例子% Z" k% T. Z% X# D
    filename:linguist        匹配名为“linguist”的文件
    8 e$ `( V) B+ D2 N! K  L" `filename:.vimrc commands        匹配带有 “commands” 一词的.vimrc文件。: h6 Z3 E5 Z! Q; f5 @' {- z
    3.4. 搜索用户7 J' ^+ [5 t* \: K1 }$ ?
    3.4.1. 按帐户名称、全名或公共电子邮件搜索
    . b. b7 \2 f, {$ i+ v- x. u' {. I语法        例子. Q2 p5 ~' ~9 i& i3 S
    userctocat        匹配用户名为“octocat”的用户/ N2 h0 f8 F8 n  p3 P  Z
    org:electron type:users        匹配 Electron 组织的账户名
    7 F1 k3 q: {5 Q: Nkenya in:login        匹配用户名中包含“kenya”一词的用户
    ; V3 P: M1 Z% B% f/ ]3 q9 ^# dbolton in:name        匹配真实姓名中包含单词“bolton”的用户7 R9 F+ Q- [' P  n1 C( ~; W8 Q
    fullname:Nat Friedman        匹配全名“Nat Friedman”的用户。注意:此搜索限定符对间距敏感。# @. I5 R& G5 ^! y: T
    data in:email        将用户与电子邮件中的“data”一词匹配起来% x" U0 `+ Q1 \7 A3 x& s4 K
    3.4.2. 按用户拥有的仓库数量搜索0 Z5 v& T- E% O/ U5 s
    语法        例子
    * C; W5 @! l) c3 m+ prepos:>9000        匹配存储库数量超过 9,000 的用户
    , ?9 _6 x! D0 A/ [( ~bert repos:10…30        匹配用户名或真实姓名中包含“bert”一词且拥有 10 到 30 个存储库的用户
    ( Y4 q0 H) t2 s  y' U+ I3.4.3. 按创建用户帐户的时间搜索
    3 s5 Z* v6 K8 s: o& J( m( S语法        例子/ r0 p  L0 I1 @# u& G- c) i7 t0 @
    created:<2011-01-01        匹配 2011 年之前加入的用户
    9 F8 X' W  i# h" Ycreated:>=2013-05-11        匹配在 2013 年 5 月 11 日或之后加入的用户
    % t" w' C+ ~8 `created:2013-03-06 location:london        匹配于 2013 年 3 月 6 日加入且将其位置列为伦敦的用户
    6 o$ B6 _' V+ X. B0 K0 Kcreated:2010-01-01…2011-01-01 john in:login        匹配在 2010 年到 2011 年之间加入且用户名中包含单词“john”的用户
    : q% Y! |* k  b. a; ^" {; v3.4.4. 按关注者数量搜索
    + I' y" t& S; m- a/ @语法        例子
    6 J: C8 H4 b7 x/ n  Bfollowers:>=1000        匹配拥有 1,000 或更多关注者的用户& R) X8 U% c0 ^; B3 h. f4 [
    sparkle follower:1…10        匹配拥有 1 到 10 个关注者的用户,他们的名字中带有“sparkle”这个词; _4 y5 J) r6 f6 c9 y* o
    ————————————————5 ~0 H' \% {5 t, b5 M- T
    版权声明:本文为CSDN博主「Jack·Kwok」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。  h/ O* W5 g4 X  J
    原文链接:https://blog.csdn.net/PaperJack/article/details/118543980
    9 j0 S) d* T. \1 P0 ~1 N
    : P, ?8 O0 B7 L9 I+ X; J
    + {# z+ i3 Z. V6 T* a
    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-28 22:21 , Processed in 1.865962 second(s), 56 queries .

    回顶部