QQ登录

只需要一步,快速开始

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

    * U8 ~  Y, e8 A$ {73个GitHub高级搜索技巧0 ?+ H" H% {8 H% D7 M9 S# v: g
    73个GitHub高级搜索技巧  b% _& U0 k  p8 r; \6 x6 [$ [
    1. 前言
    & m+ C# Q, [3 K; Y$ d6 |2. 排序搜索结果: k- v7 h2 a9 K8 d! K5 x
    2.1. 按交互排序) N; |) p. g- t
    2.2. 按反应排序
      j5 o- o% Z8 ]4 E8 E2.3. 按作者日期排序
    ( U/ i8 S  i, O* |( ?+ Z2.4. 按提交者日期排序5 \+ k) C! k- i# [
    2.5. 按更新日期排序
    % ^& f% q. G( p+ o5 w9 c% R8 v/ w3. 搜索范围
    / g" y7 h! L/ U- \6 u3.1. 搜索存储库4 u' k$ v% o- R, ]; Y3 L* N
    3.1.1. 按存储库名称、描述或 README 文件的内容搜索9 p+ o" L9 [2 e  L+ Q! ~
    3.1.2. 在用户或组织的仓库中搜索/ c4 B# m8 N( m, T& \
    3.1.3. 按存储库大小搜索
    , p. X- M3 f+ x5 k' f3.1.4. 按分叉数搜索
    : _4 P7 l/ T; ]2 B1 y) Q3.1.5. 按星数搜索1 y4 w+ I. c& v# M" w
    3.1.6. 按创建或上次更新存储库的时间搜索
    $ L9 c& X) M0 Y8 w3.1.7. 按语言搜索, ]$ v' j( z7 W  F1 U+ Z* O
    3.1.8. 按主题搜索
    - D; G( `4 j; r* g' X3.1.9. 按主题数量搜索
    3 o# a/ y7 R8 G; H" L  c3.1.10. 按许可证搜索* A2 V- }6 q/ d
    3.1.11. 按存储库可见性搜索7 E+ f% K! t% i/ U6 M- h1 ?
    3.1.12. 根据仓库是否是镜像进行搜索# X& G  N: W: L9 ^
    3.2. 搜索主题
    # E! m0 q9 }) A5 {6 e% `: d+ a/ c) E3.2.1. 使用搜索限定符缩小搜索范围
    ' k" U# |: L+ u2 \8 y( r3.3. 搜索代码9 m6 z) t+ H% f4 i" T
    3.3.1. 按文件内容或文件路径搜索7 c/ ^7 u2 L" W5 ~8 A/ Y4 P; }
    3.3.2. 在用户或组织的仓库中搜索
    * S' r! q8 d! @7 ]- t! {3.3.3. 按语言搜索# ^, x& G3 P6 K  M8 M+ k
    3.3.4. 按文件大小搜索
    9 _0 E2 V; r& ~5 C$ [3.3.5. 按文件名搜索7 a4 @5 x" e: x( C8 k
    3.4. 搜索用户
    2 k$ U0 r) h+ A: _5 p1 n" X, O3.4.1. 按帐户名称、全名或公共电子邮件搜索
    8 _- p( o8 L& ?; C3.4.2. 按用户拥有的仓库数量搜索1 c: f, Z! g* a* Z3 {+ q$ V* q
    3.4.3. 按创建用户帐户的时间搜索
    & A. X* d6 ~+ m0 _3.4.4. 按关注者数量搜索$ D) q0 j$ d: [
    1. 前言% u* f/ n- F) e& h7 Q7 m
    GitHub的搜索功能绝不仅仅是单纯匹配你输入的内容,而是有如下匹配规则。
    6 b/ c2 g7 l7 W7 |/ {
    8 N5 j1 r  A" F& V
    / y; e6 Y+ L$ I7 `: V% D+ U
    本文参考自GitHub官方文档。
    * u8 {9 L% U# @( U& O/ [GitHub官方文档:https://docs.github.com/en- E! g; ?9 Y/ k9 e, t$ f

    6 S' J  }) x9 @$ K9 R* W, ^4 G
    ! r" _& V; ~3 O! M6 P

    ; y9 F3 p( Y  Z/ z. b' c9 ^
    $ N% j% X; R# ~. Z6 K( j
    本文第3点总结了目前GitHub搜索最常用的技巧,根据我们平时搜索的内容分为了搜索存储库、搜索主题、搜索代码和搜索用户四个小点,你可以根据自己想要的搜索内容定位到每个小点,同时第2点总结了将你搜索到的结果按照什么排序顺序排序,包括交互排序、反应排序、作者日期排序、提交者日期排序、更新日期排序等。
    , z; S% K2 L. C
    * H: v8 u4 h+ a3 U
      m; F8 q# ^! p7 s' l7 v
    2. 排序搜索结果3 U" @4 T) [) _: {% B
    2.1. 按交互排序1 T* L  U- ^' G
    语法        例子
    - B! Y3 z) q: ]( r) jorg:github sort:interactions        匹配 GitHub 拥有的存储库中的问题,按反应和评论的最高组合数排序, _2 _# J$ W; q0 M/ @* n  u1 J
    org:github sort:interactions-asc        匹配 GitHub 拥有的存储库中的问题,按最少的反应和评论组合数排序
    6 j$ a" s2 W( }* {# V: K# D2.2. 按反应排序; k1 B& s! a" n& j4 [9 n. q3 J$ }2 J  I
    语法        例子# t( J/ D9 u4 v
    org:github sort:reactions        匹配 GitHub 拥有的存储库中的问题,按最高反应数排序。
    ! Z! y6 z6 H! K& v" horg:github sort:reactions-asc        匹配 GitHub 拥有的存储库中的问题,按反应数量升序排序(从最少到最多)
    4 B) p2 {7 X8 [# E4 r' m  o+ porg:github sort:reactions-+1        匹配 GitHub 拥有的存储库中的问题,按最多点赞 (👍) 反应排序
    8 w/ }; k& Z2 ?7 `; O9 a- _! G  Xorg:github sort:reactions- -1        匹配 GitHub 拥有的存储库中的问题,按最多 (👎) 反应排序
    5 L+ [4 t- T/ |9 u) Horg:github sort:reactions-smile        匹配 GitHub 拥有的存储库中的问题,按最多笑 (😄) 反应排序& j4 @( L! m: F( z9 v9 b
    org:github sort:reactions-tada        匹配 GitHub 拥有的存储库中的问题,按大多数欢呼 (🎉) 反应排序
    ; k  D5 ~) p' g, V) Norg:github sort:reactions-heart        匹配 GitHub 拥有的存储库中的问题,按大多数心脏 (❤️) 反应排序0 O3 K$ ~2 @# f. R4 B/ f# S3 H
    2.3. 按作者日期排序$ B" D  c* w4 p
    语法        例子
    : ], E6 ^( C8 y; ?+ ]org:github sort:author-date feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期降序排序2 r+ u: M. S3 ?8 `7 K
    org:github sort:author-date-asc feature        匹配 GitHub 拥有的存储库中包含单词“feature”的提交,按作者日期升序排序
    ' I" v0 I, t7 ~0 y! l# j8 r2.4. 按提交者日期排序1 m/ U% j- k5 T/ p; q/ i0 H
    语法        例子+ u$ w- t: l: s
    org:github sort:committer-date        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期降序排序
    5 T1 v; _1 g. L3 B! \org:github sort:committer-date-asc        匹配 GitHub 拥有的存储库中包含“功能”一词的提交,按提交者日期升序排序
    ) C$ ]3 r8 Q6 U  a% ^* \% ^9 s2.5. 按更新日期排序8 |( g* S4 L. u/ ~0 B2 ?( S
    语法        例子
    1 O" ~' }! ]! @+ [sort:updated feature        匹配包含“feature”一词的存储库,按最近更新日期排序$ e" |" |. W+ O; S3 J
    sort:updated-asc feature        匹配包含单词“feature”的存储库,按最近更新日期排序" p5 h! n! R8 h! [
    3. 搜索范围
    * R' |: R0 v9 d+ D: s! C1 T0 e6 I3.1. 搜索存储库. Q6 d7 J# Y0 P3 }4 E( w
    3.1.1. 按存储库名称、描述或 README 文件的内容搜索6 V: w5 K) }+ t4 u" n! u
    语法        例子
    9 A% X9 ]9 p; C* k9 {in:name jquery        匹配存储库名称中带有“jquery”的存储库。9 g: G4 I  \8 F+ O+ T4 v- k! b' f
    in:description jquery        匹配存储库描述中带有“jquery”的存储库。
    . _1 m0 ^7 m( H. Q: O$ L; Q8 Jin:readme jquery        匹配存储库的 README 文件中提到“jquery”的存储库。2 c( n0 N+ ~' Q% ^4 r2 y' F
    3.1.2. 在用户或组织的仓库中搜索
    % s( z  Q6 L; c$ b$ r5 ?  I, _+ g5 J语法        例子
    5 J! Q: {2 ^4 x" L: m# duser:defunkt forks:>100        匹配用户名为 defunkt 的具有超过 100 个 fork 的存储库。
    0 d" w  w% Y6 k0 j6 j) y3 _3.1.3. 按存储库大小搜索
    ( d3 Q0 R( f9 A; R' c/ q' X语法        例子
    3 v# q- x) U. b5 ?4 r6 Wsize:1000        匹配大小为 1 MB 的存储库- K  y& m) j% S2 U2 _* u6 P0 Z4 L
    size:>=30000        匹配至少 30 MB 的存储库) X' ~( o$ C! h  h1 @
    size:<50        匹配小于 50 KB 的存储库% S) o1 n2 D0 M
    size:50…120        匹配 50 KB 到 120 KB 之间的存储库
    1 n) ]; B2 I( K4 c0 D/ o' ^; e3.1.4. 按分叉数搜索6 V2 E" b# b2 p6 E( v- D
    语法        例子
    . p% U3 k5 @. ^8 c' i3 n) K8 s; cforks:5        匹配只有五个 fork 的存储库
    5 u, \9 b; N+ G1 R3 dforks:>=205        匹配至少有 205 个 fork 的仓库5 s; ?' l8 W+ L! L( H
    forks:<90        匹配具有少于 90 个 fork 的存储库
    ( Z. s  K6 S3 Jforks:10…20        匹配具有 10 到 20 个 fork 的存储库# a! ^1 q3 M3 |1 \
    3.1.5. 按星数搜索1 o1 [* i5 s8 T8 l
    语法        例子/ F8 @6 k5 C" W6 C8 |+ ]
    stars:500        匹配恰好有 500 颗星的存储库
    + E( b8 l; V: H, A1 T& t3 Fstars:10…20        匹配小于 1000 KB 的 10 到 20 星的存储库
    6 M* t6 w: J  v- l: v  kstars:>=500 fork:true language:php        匹配至少 500 个星的存储库,包括分叉的,用 PHP 编写的1 g4 i! x; m" I+ u) J) r
    3.1.6. 按创建或上次更新存储库的时间搜索
    , n; F9 N3 W9 }% s语法        例子
    0 r6 w6 I8 X# gwebos created:<2011-01-01        匹配 2011 年之前创建的带有“webos”一词的存储库/ H/ {' S6 ^2 J# M
    css push:>2013-02-01        匹配 2013 年 1 月之后推送到的带有“css”一词的存储库/ A5 g4 D8 r8 k( a8 n
    case push:>=2013-03-06 forknly        匹配 2013 年 3 月 6 日或之后推送到的带有单词“case”的存储库,并且是分叉。
    # A! e2 o- Q+ o3.1.7. 按语言搜索& U4 o  \% N4 d8 Y7 q
    语法        例子
    * c2 _5 b, ~/ M1 |rails language:javascript        匹配使用 JavaScript 编写的带有“rails”一词的存储库
    2 ^& p/ J$ J' L3.1.8. 按主题搜索
    : ?: J) E; K( j  @, B4 Y语法        例子
    3 V* p- M. R) Z2 Z! ^1 Mtopic:jekyll        匹配已分类为主题“jekyll”的存储库
    3 r% O* m+ W" x( B/ @3.1.9. 按主题数量搜索) V: G4 z. g$ e# N
    语法        例子+ Z& q4 y1 a) J) R1 @# y" V
    topic:5        匹配具有五个主题的存储库8 C$ T$ O' {$ I
    topic:> 3        匹配具有三个以上主题的存储库+ T- X# G  w. m9 r
    3.1.10. 按许可证搜索
    " ?1 }8 ^- n% ?! E$ x语法        例子# T* u5 n. z, T) M6 O  [- j7 T
    license:apache-2.0        匹配在 Apache License 2.0 下获得许可的存储库$ l' x9 r9 P9 z; I3 ]
    3.1.11. 按存储库可见性搜索
    8 U2 `, N4 [2 |% ]1 E( ~  S语法        例子
    5 Y  e( x. R; Jis:public org:github        匹配 GitHub 拥有的公共存储库
    % j. x6 N3 t8 z  g" Cis:internal test        匹配您可以访问并包含“test”一词的内部存储库# P; X7 q1 @: R3 U0 O/ h
    is:private pages        匹配您可以访问并包含“pages”一词的私有存储库
    ; |, A3 Z2 @! M  m& |0 G5 Z3.1.12. 根据仓库是否是镜像进行搜索! W5 Y+ @, }. y) U' _, v
    语法        例子
    1 q1 P6 f" }* s- ?& Cmirror:true GNOME        匹配作为镜像且包含单词“GNOME”的存储库. ^; r/ l, R: `' g5 z" k
    mirror:false GNOME        匹配非镜像且包含“GNOME”一词的存储库2 k( g# o9 m  B6 x
    3.2. 搜索主题9 @+ U9 L& b' h/ Z+ S8 W% G8 a
    3.2.1. 使用搜索限定符缩小搜索范围
    4 [) B/ G$ b3 y# }语法        例子
    ( m$ q6 `( ]: ], ~/ Tis:curated javascript        匹配经过策划并包含“javascript”一词的主题, K' ~% D3 H! m9 U
    is:featured javascript        匹配https://github.com/topics/上的特色主题并包含“javascript”一词: Z& z4 Z5 a  r; I8 B5 F) L( D
    is:not-curated javascript        匹配没有额外信息(例如描述或徽标)并包含“javascript”一词的主题
    6 P" U* P' Q8 `# Y* y5 _) P7 Fis:not-featured javascript        匹配https://github.com/topics/上没有特色且包含“javascript”一词的主题: h1 S7 c$ z( }' e
    repositories:>5000        匹配具有超过 5000 个存储库的主题
    & V" e8 G2 f3 @/ i3.3. 搜索代码3 N# U# g4 D- |% O
    序号        代码搜索的注意事项:由于搜索代码的复杂性,对搜索的执行方式有一些限制9 a) q* Z. I+ i4 T9 Z! L( P
    1        必须登录 GitHub 上的用户帐户才能在所有公共存储库中搜索代码
    ' P) ^6 X: d# Y/ o$ U; }2        只有当分叉的星数多于父存储库时,分叉中的代码才可搜索。星号少于父存储库的分叉不会为代码搜索编制索引。要在搜索结果中包含星数多于父级的分叉,您需要将fork:true或添加forknly到您的查询中。有关更多信息,请参阅“在分叉中搜索”
    * \$ \( \7 V& t3        仅对默认分支进行索引以进行代码搜索
    2 h! U: ]7 M9 M  U; ~# E4        只能搜索小于 384 KB 的文。) G1 v7 ^: y$ o/ [. x( p* \
    5        只能搜索少于 500,000 个文件的存储库
    8 b% Y$ m2 k. @+ ~7 M5 q" i6        只有在去年有活动或在搜索结果中返回的存储库才可搜索
    + V) S4 I: a' O) F6 ^2 }7        除了filename搜索之外,在搜索源代码时,您必须始终包含至少一个搜索词。例如,搜索language:javascript无效,而搜索无效amazing language:javascript
    ! C/ e7 Q5 v1 ~4 J- W' l' Y8        搜索结果最多可以显示来自同一个文件的两个片段,但文件中可能会有更多的结果0 X5 P; F" B' P" B* Y( ~  j# o
    9        您不能在搜索查询中使用以下通配符:. , : ; / \ ` ’ " = * ! ? # $ & + ^
    # b% `9 N6 y4 i9 {3.3.1. 按文件内容或文件路径搜索
    4 `+ t! x! L$ J. V) b语法        例子6 E5 J- X: l' R1 n$ N) Q
    octocat in:file        匹配文件内容中出现“octocat”的代码* Y+ Q1 R: C, ^
    octocat in:path        匹配文件路径中出现“octocat”的代码# g7 \; p, `: U% {6 E
    3.3.2. 在用户或组织的仓库中搜索
    + L" j. x. D' o3 w/ _! {语法        例子5 }& E: t) M" O' |' o- ^
    user:defunkt extension:rb        匹配来自@defunkt 的以.rb结尾的代码
    - H  v# j4 i! X2 R/ p/ Worg:github extension:js        匹配来自 GitHub 的以.js结尾的代码1 ~& Z, i; F: I) \- ]9 l8 o
    repo:mozilla/shumway extension:as        匹配@mozilla 的 shumway 项目中以.as结尾的代码( {+ S  H6 Z) r7 s  Q  H0 a
    3.3.3. 按语言搜索8 l4 e/ v6 _; n& m4 O
    语法        例子$ l1 D4 U- R( z  e0 p, F
    element language:xml size:100        匹配带有标记为 XML 且正好有 100 个字节的单词“element”的代码
    ; n+ z% Q7 P8 y- kdisplay language:scss        匹配带有单词“display”的代码,它被标记为 SCSS
    2 K" I: A; O& }& J* \org:mozilla language:markdown        匹配所有@mozilla 存储库中标记为 Markdown 的代码
    ' u9 y9 u5 Y4 M6 B' d) D3.3.4. 按文件大小搜索8 A" V* _  \$ S. f
    语法        例子$ y' r6 b; b+ J3 y! S( n3 j
    function size:>10000 language:python        匹配用 Python 编写的大于 10 KB 的文件中带有“function”一词的代码
    6 A4 I) `! e% v) O( Z# c; L) D4 X, O3.3.5. 按文件名搜索
    . I3 j, Z( ?# W6 q5 V语法        例子4 O" i! |: @9 N: }# h$ S% d
    filename:linguist        匹配名为“linguist”的文件
    ' V4 Z9 q# O" gfilename:.vimrc commands        匹配带有 “commands” 一词的.vimrc文件。
    , d  T& {8 k# G; _- J3.4. 搜索用户# r' m. y) w/ M# h9 T+ E! y9 A' v9 L
    3.4.1. 按帐户名称、全名或公共电子邮件搜索- E, N, q1 v4 R! W" |
    语法        例子: u! i( @: j" L+ f9 U9 u2 O3 h
    userctocat        匹配用户名为“octocat”的用户) P8 |, Z  B. P
    org:electron type:users        匹配 Electron 组织的账户名  I8 B. B* E, U1 _3 ]& R+ W
    kenya in:login        匹配用户名中包含“kenya”一词的用户! h) {2 Z* R0 x7 K8 _
    bolton in:name        匹配真实姓名中包含单词“bolton”的用户- g* p2 v  H$ v
    fullname:Nat Friedman        匹配全名“Nat Friedman”的用户。注意:此搜索限定符对间距敏感。
    + b$ J3 u* G2 t. sdata in:email        将用户与电子邮件中的“data”一词匹配起来9 w3 _6 B% p; }: D' [
    3.4.2. 按用户拥有的仓库数量搜索" d2 h9 b& f. x9 u7 {# q
    语法        例子
    $ k6 m" G1 z# i7 G; jrepos:>9000        匹配存储库数量超过 9,000 的用户
    * X5 z* Y" r( r' A  x+ ^0 tbert repos:10…30        匹配用户名或真实姓名中包含“bert”一词且拥有 10 到 30 个存储库的用户' Q3 T: k; X8 d
    3.4.3. 按创建用户帐户的时间搜索
    6 K7 s% w! L! `1 _% A8 Q8 M语法        例子
    5 D9 V$ o8 r, ]# b) u# W$ q, lcreated:<2011-01-01        匹配 2011 年之前加入的用户
      l  V" R% q7 c5 i  ~8 fcreated:>=2013-05-11        匹配在 2013 年 5 月 11 日或之后加入的用户
      D# {, H  e; k; ?created:2013-03-06 location:london        匹配于 2013 年 3 月 6 日加入且将其位置列为伦敦的用户
    , T; N( T$ C+ Icreated:2010-01-01…2011-01-01 john in:login        匹配在 2010 年到 2011 年之间加入且用户名中包含单词“john”的用户
    , P& U  Z/ n! p5 X) U3.4.4. 按关注者数量搜索
    0 y$ u; c; ?$ \+ ^7 ~$ L语法        例子
    # H; l; C: Y/ L; Efollowers:>=1000        匹配拥有 1,000 或更多关注者的用户
    ) M' H& O3 Q. l: J9 [$ \sparkle follower:1…10        匹配拥有 1 到 10 个关注者的用户,他们的名字中带有“sparkle”这个词6 B" k% O$ j8 R2 x! V. ^
    ————————————————; X  `8 L  E- K* x4 m: n) q% r
    版权声明:本文为CSDN博主「Jack·Kwok」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。. p& C$ K" w; C9 H0 R, n8 e
    原文链接:https://blog.csdn.net/PaperJack/article/details/118543980$ T6 j& z1 t  x7 B: z( W

    1 d6 u, s$ |8 y4 V1 d
    1 w2 [9 Q& H9 ^) w" a1 ^, K; w9 ?
    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-5-26 23:21 , Processed in 0.306247 second(s), 56 queries .

    回顶部