QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3776|回复: 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
    * _" R9 x# F, A+ e- [& h2 g
    73个GitHub高级搜索技巧& ]' a; H9 @5 V
    73个GitHub高级搜索技巧
    , q% |/ E* u( N! G2 b1. 前言: c8 G/ N" R* `2 H: p% p
    2. 排序搜索结果: K2 R9 [( a. e  K$ E2 ^
    2.1. 按交互排序
    6 K' B, ^# w, Y2.2. 按反应排序" V  ^" P8 F* W, Z+ M9 z, u
    2.3. 按作者日期排序
    6 U$ A5 _. a% ^1 a+ d2.4. 按提交者日期排序3 S8 M6 m+ p4 C1 o
    2.5. 按更新日期排序
    + J- H6 J, X; r" a# d, K  s9 L; p3. 搜索范围8 |+ T; ]/ a+ s8 F
    3.1. 搜索存储库5 e, f% F7 @3 q- D$ E
    3.1.1. 按存储库名称、描述或 README 文件的内容搜索& g! h& E8 x) w. n
    3.1.2. 在用户或组织的仓库中搜索
    % H# u# [0 v2 Y" a# X3.1.3. 按存储库大小搜索2 ]) ~- q- j) ~0 s* i9 _, P
    3.1.4. 按分叉数搜索* B2 Q2 u: s# W5 e  c( @7 \
    3.1.5. 按星数搜索
    4 I0 ^' {3 s; k, W5 e/ W3.1.6. 按创建或上次更新存储库的时间搜索
    ! t& F3 F/ i( w& J$ z3.1.7. 按语言搜索' x0 u9 Y8 U6 S- D0 x; ~
    3.1.8. 按主题搜索
    9 d6 z' w' r! T% H0 ~# q3.1.9. 按主题数量搜索
    " W/ h) x" q$ q! _3.1.10. 按许可证搜索* t- L. i& F% S# C1 f" o6 B% r9 j) L" Z, X
    3.1.11. 按存储库可见性搜索6 E& T) Q$ e9 x1 |
    3.1.12. 根据仓库是否是镜像进行搜索
      M7 c; ~: L# E, R! o3.2. 搜索主题$ B3 B% w# R7 i" W- B
    3.2.1. 使用搜索限定符缩小搜索范围
    . b$ G4 ~: d& r% f% J3.3. 搜索代码
    . b* D- z  j# F2 i% |3.3.1. 按文件内容或文件路径搜索
    # f1 J; J9 F2 U! s9 G+ r3.3.2. 在用户或组织的仓库中搜索; j+ K! _) |$ L- ^# c6 u( W% Q
    3.3.3. 按语言搜索. e( x1 M+ t  H; j% y0 l
    3.3.4. 按文件大小搜索
    , {5 e4 V9 _! `  _3.3.5. 按文件名搜索3 e" B5 ~9 I. i9 \" u# p
    3.4. 搜索用户9 v- ]) T' y  `0 Y# ^
    3.4.1. 按帐户名称、全名或公共电子邮件搜索
    ) I* \8 y2 w9 d2 K$ f/ e3.4.2. 按用户拥有的仓库数量搜索
    6 u1 Z1 Z& a5 R  \% H7 W3.4.3. 按创建用户帐户的时间搜索4 ~2 G4 U# ?& W0 I
    3.4.4. 按关注者数量搜索6 T2 p% L7 `# h
    1. 前言2 @9 e9 A! _! k- p" p/ ?4 L" [4 Z* E
    GitHub的搜索功能绝不仅仅是单纯匹配你输入的内容,而是有如下匹配规则。
    . D! W, ^+ m  M' N
    , u& S, F/ M$ b5 M

    - n3 M' u. E! w: z' s本文参考自GitHub官方文档。" Z+ l) C5 w" U& l; J
    GitHub官方文档:https://docs.github.com/en
    * i! C6 _8 {- D
    1 m" _$ X- |1 R  `

    2 J0 A! ^; H6 Q- w- g3 ~6 I! A4 I" m6 S* ?1 o' v, v, o0 H. J
    $ }3 ^" y* f: O; d5 Q0 f$ H
    本文第3点总结了目前GitHub搜索最常用的技巧,根据我们平时搜索的内容分为了搜索存储库、搜索主题、搜索代码和搜索用户四个小点,你可以根据自己想要的搜索内容定位到每个小点,同时第2点总结了将你搜索到的结果按照什么排序顺序排序,包括交互排序、反应排序、作者日期排序、提交者日期排序、更新日期排序等。. x. V& c# r! J! R' b" l
    . c- E' L8 d9 |( R- I% c

    8 o( z) \; a! D# j2. 排序搜索结果+ n' \6 k3 i: k5 y% Z0 o
    2.1. 按交互排序( ^& o& i! ?* u! \1 m+ z: a
    语法        例子: G3 F5 j1 y  f2 J, `
    org:github sort:interactions        匹配 GitHub 拥有的存储库中的问题,按反应和评论的最高组合数排序6 f  Q! _! P6 h, P0 Q, H
    org:github sort:interactions-asc        匹配 GitHub 拥有的存储库中的问题,按最少的反应和评论组合数排序! W: d0 C. }0 X& |/ G4 U
    2.2. 按反应排序% Z$ T4 ^) ]; Z/ W6 r5 Y
    语法        例子
    . h5 p. M+ J. ~$ i" porg:github sort:reactions        匹配 GitHub 拥有的存储库中的问题,按最高反应数排序。
    ( C' {& x2 u7 ?+ z8 torg:github sort:reactions-asc        匹配 GitHub 拥有的存储库中的问题,按反应数量升序排序(从最少到最多)
    $ b9 x) C! B; S4 B% G2 R9 O$ qorg:github sort:reactions-+1        匹配 GitHub 拥有的存储库中的问题,按最多点赞 (👍) 反应排序3 a- n' g- N7 I. ^/ }' H; I0 i' b4 V
    org:github sort:reactions- -1        匹配 GitHub 拥有的存储库中的问题,按最多 (👎) 反应排序
    $ E& g$ A7 n& S8 l1 z7 M( ?* }7 T2 Jorg:github sort:reactions-smile        匹配 GitHub 拥有的存储库中的问题,按最多笑 (😄) 反应排序
    " o' R# ]  W2 g' N8 Oorg:github sort:reactions-tada        匹配 GitHub 拥有的存储库中的问题,按大多数欢呼 (🎉) 反应排序) {0 M- I1 v# ^0 v, T. g
    org:github sort:reactions-heart        匹配 GitHub 拥有的存储库中的问题,按大多数心脏 (❤️) 反应排序
    3 E4 M0 R' G' y4 ?0 T! ?! [2.3. 按作者日期排序
    9 }# y8 ^5 p/ s; F3 F语法        例子. Z- p+ T: b% e/ I4 ?
    org:github sort:author-date feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期降序排序; Z6 g) y' I* l5 B- M
    org:github sort:author-date-asc feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期升序排序
    4 l& X) k8 x% h1 g2.4. 按提交者日期排序" v0 x( ]% N- [0 r4 x' V2 F
    语法        例子
    ; t+ G1 A. H9 w- u0 ?1 k+ m! w" Rorg:github sort:committer-date        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期降序排序' b* n. W% W6 F" N
    org:github sort:committer-date-asc        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期升序排序- ?. Z( {5 T8 [( Q6 |. o
    2.5. 按更新日期排序6 x) o% ?7 u% P- h+ z8 O
    语法        例子6 p6 r7 g, v. X$ O
    sort:updated feature        匹配包含“feature”一词的存储库,按最近更新日期排序
    7 D7 i; R) c  q* Zsort:updated-asc feature        匹配包含单词“feature”的存储库,按最近更新日期排序  W8 }; E4 L4 [, d+ X( \
    3. 搜索范围* ?6 {8 B4 P6 |( v) r4 Q" N
    3.1. 搜索存储库
    3 \: R1 c7 ^& o( R& N4 ]! E3.1.1. 按存储库名称、描述或 README 文件的内容搜索2 M$ h' y: K2 J! [1 Y% T
    语法        例子* N, y  W  Z9 b5 |
    in:name jquery        匹配存储库名称中带有“jquery”的存储库。( C+ i: [' c' A9 Z( G+ ?+ X5 K* V
    in:description jquery        匹配存储库描述中带有“jquery”的存储库。
    & D. `' @" K7 ^0 M# ?in:readme jquery        匹配存储库的 README 文件中提到“jquery”的存储库。
    1 ~# @" P! m1 V2 o5 i3.1.2. 在用户或组织的仓库中搜索- Z; A  n) u* U' y$ v
    语法        例子$ R( @- k' U! u* U: @+ M
    user:defunkt forks:>100        匹配用户名为 defunkt 的具有超过 100 个 fork 的存储库。3 P! Q' }' @% w3 e! _
    3.1.3. 按存储库大小搜索! S, J2 T( ~) n. g# t  a/ f
    语法        例子' O3 B4 ~$ R+ I2 m- V1 t4 C5 G
    size:1000        匹配大小为 1 MB 的存储库
    . f3 M8 T* P1 z1 t3 a! }size:>=30000        匹配至少 30 MB 的存储库+ N  P1 B. @. i. @
    size:<50        匹配小于 50 KB 的存储库
    , O1 F; j# d4 d5 j" R+ @  tsize:50…120        匹配 50 KB 到 120 KB 之间的存储库
    9 b' b3 W5 J+ G0 k3.1.4. 按分叉数搜索
    0 _4 h+ d$ E! J$ S: x4 N% o语法        例子
    * j' o" e8 E9 p) kforks:5        匹配只有五个 fork 的存储库
    $ f. h/ b. G) y* y; ?# Y, O" \forks:>=205        匹配至少有 205 个 fork 的仓库
    7 O& g3 Y& u- e( K; u$ uforks:<90        匹配具有少于 90 个 fork 的存储库  `8 P, T9 \8 Q( b
    forks:10…20        匹配具有 10 到 20 个 fork 的存储库
    - y7 w, o! T& \. @) w3.1.5. 按星数搜索) v: \! B1 b/ w' y* a) `( I+ b
    语法        例子
    2 E. a1 f3 Q7 A5 xstars:500        匹配恰好有 500 颗星的存储库
    5 I8 b% h# Y: j9 m$ a! Istars:10…20        匹配小于 1000 KB 的 10 到 20 星的存储库; H2 ]6 K2 C# O1 o
    stars:>=500 fork:true language:php        匹配至少 500 个星的存储库,包括分叉的,用 PHP 编写的
    0 A8 C' w, F% i9 F9 Y/ K+ F3.1.6. 按创建或上次更新存储库的时间搜索) @( q  C- i: P6 _+ O9 \& t
    语法        例子) _) y( ]( U$ C; q9 h- i+ r
    webos created:<2011-01-01        匹配 2011 年之前创建的带有“webos”一词的存储库- |: z; k6 T& y6 z0 R: D6 Y
    css push:>2013-02-01        匹配 2013 年 1 月之后推送到的带有“css”一词的存储库( p, \1 R$ ]. U* X# y; m
    case push:>=2013-03-06 forknly        匹配 2013 年 3 月 6 日或之后推送到的带有单词“case”的存储库,并且是分叉。, }+ f5 @* k6 [% s, m
    3.1.7. 按语言搜索
    # M2 Y6 @' V$ H. {+ H语法        例子' r1 L- @; G  |
    rails language:javascript        匹配使用 JavaScript 编写的带有“rails”一词的存储库
    6 m5 R! f+ a) U  L3.1.8. 按主题搜索
    0 l$ f, M; P  E( s2 C语法        例子
    2 C, v1 m5 F/ ^! ^+ Ktopic:jekyll        匹配已分类为主题“jekyll”的存储库" g7 \/ r' K9 W' F; u" {
    3.1.9. 按主题数量搜索
    / |7 Z" u9 O: T/ z; R8 x0 W语法        例子
    5 w/ r, _$ D3 n, [- j7 h; t$ qtopic:5        匹配具有五个主题的存储库
    : o8 ^$ j  j, `topic:> 3        匹配具有三个以上主题的存储库5 ]2 S! Y7 P# |6 P
    3.1.10. 按许可证搜索
    / f. A- N- n6 _( \9 a. [语法        例子
    ) L% w* F2 q. d3 A- K5 k) elicense:apache-2.0        匹配在 Apache License 2.0 下获得许可的存储库/ I, Q/ O( O( ]/ L9 j
    3.1.11. 按存储库可见性搜索  X" Z$ @, O, z. Y9 F6 {( Z
    语法        例子
    8 G) ^' z" s0 E; C# k5 [is:public org:github        匹配 GitHub 拥有的公共存储库2 I. n; |5 Y6 m* b( J1 ]
    is:internal test        匹配您可以访问并包含“test”一词的内部存储库
    & ]& ^* Z. j' N# kis:private pages        匹配您可以访问并包含“pages”一词的私有存储库" |4 X, f( z9 T
    3.1.12. 根据仓库是否是镜像进行搜索, |/ t+ o( W9 j( O# {3 ^# `8 ~
    语法        例子* ]. N  F3 l( f$ V. G, V
    mirror:true GNOME        匹配作为镜像且包含单词“GNOME”的存储库
    * k+ N0 ~0 f7 G0 r8 Wmirror:false GNOME        匹配非镜像且包含“GNOME”一词的存储库
    ) M5 K* w- q4 R- _! L3.2. 搜索主题+ d/ Z# m8 F; |
    3.2.1. 使用搜索限定符缩小搜索范围
    0 z; u2 l# k) i8 k4 |1 V3 q. v语法        例子, ~7 a: n8 _( T% Q4 t* J
    is:curated javascript        匹配经过策划并包含“javascript”一词的主题& i0 V7 ?* _* [" i: e+ N9 t* U- F
    is:featured javascript        匹配https://github.com/topics/上的特色主题并包含“javascript”一词
    $ o! O/ q( X& G% N4 T- M* f4 Kis:not-curated javascript        匹配没有额外信息(例如描述或徽标)并包含“javascript”一词的主题2 h6 F: H* V$ c& Q+ }* {. ?
    is:not-featured javascript        匹配https://github.com/topics/上没有特色且包含“javascript”一词的主题
    6 |/ S, Q( n) q( orepositories:>5000        匹配具有超过 5000 个存储库的主题
    * y% H% J4 h  A9 p3 [0 h% U$ T3.3. 搜索代码
    1 d# M) K3 I; E7 B4 Q; X序号        代码搜索的注意事项:由于搜索代码的复杂性,对搜索的执行方式有一些限制2 W6 s9 h2 }6 j) ]) P
    1        必须登录 GitHub 上的用户帐户才能在所有公共存储库中搜索代码5 y. G$ R; P! O! L$ I6 ?9 x
    2        只有当分叉的星数多于父存储库时,分叉中的代码才可搜索。星号少于父存储库的分叉不会为代码搜索编制索引。要在搜索结果中包含星数多于父级的分叉,您需要将fork:true或添加forknly到您的查询中。有关更多信息,请参阅“在分叉中搜索”' T4 C! B1 W* m$ }. J& J
    3        仅对默认分支进行索引以进行代码搜索! ^! {" j$ Q; N% b3 I4 w" [/ ]
    4        只能搜索小于 384 KB 的文。
    / \& x, V/ {5 d* E6 n# T$ [3 W, G5        只能搜索少于 500,000 个文件的存储库7 N" J, s7 D1 r! U8 ]3 m
    6        只有在去年有活动或在搜索结果中返回的存储库才可搜索
    9 S* t2 q7 _8 k3 N& q7        除了filename搜索之外,在搜索源代码时,您必须始终包含至少一个搜索词。例如,搜索language:javascript无效,而搜索无效amazing language:javascript
    : C* J. Z$ e  ^: z, ?( Z8        搜索结果最多可以显示来自同一个文件的两个片段,但文件中可能会有更多的结果
    ; ^& {: y+ G9 k9        您不能在搜索查询中使用以下通配符:. , : ; / \ ` ’ " = * ! ? # $ & + ^
    3 Q: I( G( f# p/ N: z$ d3.3.1. 按文件内容或文件路径搜索1 d! \/ y1 p+ `9 Z
    语法        例子
    ! }" K3 z: |3 c$ O  zoctocat in:file        匹配文件内容中出现“octocat”的代码& m# K$ E% p4 n9 a2 \
    octocat in:path        匹配文件路径中出现“octocat”的代码7 j$ b1 H4 F+ Z2 _, `
    3.3.2. 在用户或组织的仓库中搜索
    / \$ A4 g% d* L- Z3 y语法        例子
    5 o# t- n. X. o: B' M, i" P+ c9 e, euser:defunkt extension:rb        匹配来自@defunkt 的以.rb结尾的代码9 d% t# l7 ~& u% U) e/ p0 d1 d
    org:github extension:js        匹配来自 GitHub 的以.js结尾的代码- |3 m" |# ?/ ]
    repo:mozilla/shumway extension:as        匹配@mozilla 的 shumway 项目中以.as结尾的代码9 c3 `: Q8 {7 S: c( W
    3.3.3. 按语言搜索/ {" o8 z, X7 N: @: `
    语法        例子' N6 E0 K% d4 S& f* [
    element language:xml size:100        匹配带有标记为 XML 且正好有 100 个字节的单词“element”的代码
    ) n" e7 L- b0 O6 H( ?display language:scss        匹配带有单词“display”的代码,它被标记为 SCSS
    - G5 O, E  Z9 R, [. g5 L, uorg:mozilla language:markdown        匹配所有@mozilla 存储库中标记为 Markdown 的代码
    1 g& W# @! D6 p  w) s3.3.4. 按文件大小搜索, J( L( I# O! S4 @( p
    语法        例子" q+ |8 o* t5 [. ]% c
    function size:>10000 language:python        匹配用 Python 编写的大于 10 KB 的文件中带有“function”一词的代码
    ! ]0 ~3 k+ _1 s4 Z3.3.5. 按文件名搜索8 z$ Z- x/ o" I6 g
    语法        例子% @( z) C; A" s5 A0 u
    filename:linguist        匹配名为“linguist”的文件2 b2 A" j" j/ ~# p1 I; @) l/ V
    filename:.vimrc commands        匹配带有 “commands” 一词的.vimrc文件。( ~9 r% ^. L" S' @' t5 H, y& ~; l. V
    3.4. 搜索用户& d/ r/ a8 B" l
    3.4.1. 按帐户名称、全名或公共电子邮件搜索/ j  o; }% ~5 o. }3 I4 ]" V
    语法        例子
    1 c0 V6 `6 S6 ^& e: vuserctocat        匹配用户名为“octocat”的用户
    ) X! \6 T! }5 q) s1 xorg:electron type:users        匹配 Electron 组织的账户名* m' U2 R+ [- D( c0 J7 s
    kenya in:login        匹配用户名中包含“kenya”一词的用户
    4 C0 X8 u& o3 Rbolton in:name        匹配真实姓名中包含单词“bolton”的用户
    ! D" w  ?/ A- Ffullname:Nat Friedman        匹配全名“Nat Friedman”的用户。注意:此搜索限定符对间距敏感。/ q0 J, X. F9 N( E  P, z
    data in:email        将用户与电子邮件中的“data”一词匹配起来$ O6 z& _( X% L9 B5 T0 ^9 L# z
    3.4.2. 按用户拥有的仓库数量搜索
    3 c) _* E7 V, _6 E语法        例子2 M! \: i# X: {
    repos:>9000        匹配存储库数量超过 9,000 的用户
    " @/ l+ t$ ~. Q! f( u0 ibert repos:10…30        匹配用户名或真实姓名中包含“bert”一词且拥有 10 到 30 个存储库的用户( O7 T6 T" T7 Z2 _* P1 V
    3.4.3. 按创建用户帐户的时间搜索& S5 c4 P$ U4 I! k3 [/ e  o
    语法        例子
    / \1 o- q$ Y0 E- ]) X" h' x7 i2 U& Dcreated:<2011-01-01        匹配 2011 年之前加入的用户! z3 D2 A- @, O- q2 F* _
    created:>=2013-05-11        匹配在 2013 年 5 月 11 日或之后加入的用户
    7 y8 H" V$ ]# ccreated:2013-03-06 location:london        匹配于 2013 年 3 月 6 日加入且将其位置列为伦敦的用户2 U% d0 Z' Q5 k  \! u8 N# m
    created:2010-01-01…2011-01-01 john in:login        匹配在 2010 年到 2011 年之间加入且用户名中包含单词“john”的用户, H, }2 u4 K4 g0 b7 b, V* n
    3.4.4. 按关注者数量搜索% ?; v4 ~$ z- K) k% B* N, }
    语法        例子
      m3 J: W3 l/ Z9 yfollowers:>=1000        匹配拥有 1,000 或更多关注者的用户
    0 }: ]! f/ `* X" jsparkle follower:1…10        匹配拥有 1 到 10 个关注者的用户,他们的名字中带有“sparkle”这个词
    7 }$ l5 [( [! t; u9 \7 V: l————————————————
    $ ]5 P: _; h! r9 f# o& \版权声明:本文为CSDN博主「Jack·Kwok」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。( }7 X# p& g1 Z5 Z: x! Y$ y
    原文链接:https://blog.csdn.net/PaperJack/article/details/118543980
    ' s. r' j3 J& c: D$ x% i
    % j+ Q' j: d9 Z
    9 ~& I0 R3 U) E. d6 V: S
    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-25 21:30 , Processed in 0.387019 second(s), 56 queries .

    回顶部