GitHub 竟然有这些骚操作,真是涨姿势

GitHub,不用过多介绍。一个面向开源及私有软件项目的托管平台,因为只支持 git 作为唯一的版本库格式进行托管,故名 GitHub。

作为「全球最大的程序员“交友”社区」,程序员的你,真的可以把它的使用发挥到极致吗?

文章收录在 GitHub JavaKeeper ,N线互联网开发必备技能兵器谱

搜索

全局搜索

傻瓜式搜索

比如我们要学习下秒杀(seckill)代码的实现,可以在整个 GitHub 站点全局搜索相关内容

但是这样的搜索范围太大,且项目质量参差不齐,所以在搜索结果页,还可以通过 Languages 选择实现语言,Sort 选择排序规则(按 Star 数量、Fork 数量、最近更新时间等)。

精准搜索(技术范)

1. in 关键词限制搜索范围

公式:搜索词 in:name(/description/readme)

搜索项目名称和自述文件中包含秒杀的仓库 seckill in:name,readme

限定符 示例
in:name jquery in:name 匹配仓库名称包含 "jquery" 的内容
in:description jquery in:name,description 匹配仓库名或描述中包含 "jquery" 的内容(组合使用)
in:readme jquery in:readme readme文件中包含"jquery"
repo:owner/name repo:octocat/hello-world 查询某人的某个项目(查octocat 的 hello-world 仓库)
2. 关键词查找

搜索语法

  • >n>=n<n<=n:查询数量范围,可以是 starts、forks、topics......
  • n..**..n:等同于 >=n<=n
  • n..m:取值范围 n 到 m
限定符 示例
stars:n stars:500 匹配 500 个 stars 的项目
stars:10..20 匹配 starts 数量 10 到 20 的项目
followers:n node followers:>=10000 匹配关注者大于等于 10000 的 node 仓库
forks:n seckill forks:5 匹配有 5 个 forks 的秒杀项目
created:YYYY-MM-DD seckill created:>2020-01-01 创建时间在 2020-01-01 之后的秒杀项目
language:LANGUAGE seckill language:java 匹配 java 语言编写的秒杀项目
user:name user:Jstarfish stars:>50 匹配 Jstarfish 用户 stars 数大于 50 的仓库
location:LOCATION location:beijing 匹配北京的朋友们
互相组合使用 seckill stars:>=500 fork:true language:java 匹配stars 数量大等于 500(包含 forks 数),且语言是 java 的秒杀项目
location:beijing language:java 北京做 Java 开发的大佬
3. awesome 加强搜索

awesome 关键字 ,awesome 系列,一般是用来收集学习,工具,书籍类相关的项目。比如我们要学习下 redis 相关的项目,包括框架、教程等,awesome redis

这几个其实也够用了,官方还给出了所有你能想得到的搜索方式:

https://help.github.com/en/github/searching-for-information-on-github/searching-on-github

项目内搜索

文件搜索

进入仓库主页面,有个 Find file,可以按文件名搜索

快捷键

  • s/ 定位到搜索框

  • g + 操作,表示跳转

    • g d 前往我的主页
    • g n 前往通知面板 About notifications
    • g c 前往代码界面 Code tab(以下均在仓库页面)
    • g i 前往问题界面 About issues
    • g w 前往 About Wike
  • t 激活文件查找,和 Find file 一样

  • w 切换分支

  • l 浏览代码时,快速跳转到指定行

官方提供:https://help.github.com/en/github/getting-started-with-github/keyboard-shortcuts

高亮显示代码

有时候我们要请教大佬,让大佬帮忙看看代码,可以使用高亮功能,在 GitHub 或 GitLab 中找到自己的代码,url 地址后加 #L 数字 表示高亮第几行,加 #L 数字 -L数字 ,表示高亮代码区间(GitLab 上不需要第二个 L)

eg:

https://github.com/Jstarfish/starfish-learning/blob/master/starfish-learn-designpattern/src/decorator/Client.java#L16-L20

查看 GitHub 热门趋势

https://github.com/trending 可以按语言,日期范围(本天、本周、本月)查看热度,有好多可供学习的热门项目。

插件

最后再推荐一个查看 GitHub 代码的浏览器插件。

octotree 用于将 Github 项目代码以树形格式展示,可以像 IDE 一样,看代码。而且在展示的列表中,我们可以下载指定的文件,而不需要下载整个项目。

Github 骚操作的更多相关文章

  1. github骚操作

    限制搜索 in关键词限制搜索范围 命令 说明 xxx in:name 项目名包含xxx的 xxx in:description 项目描述包含xxx的 xxx in:readme 项目的readme文件 ...

  2. 5分钟GET我使用Github 5 年总结的这些骚操作!

    我使用 Github 已经有 5 年多了,今天毫无保留地把自己觉得比较有用的 Gihub 小技巧送给关注 JavaGuide 的各位小伙伴. 这篇文章肝了很久,就挺用心的,大家看内容就知道了. 如果觉 ...

  3. 开源项目在闲鱼、b 站上被倒卖?这是什么骚操作?

    起因 - 又是一封邮件 2020 年 3 月 2 日,收到了一封邮件,对,这次故事的起因又是一封邮件,和上次写个bug被国家信息安全漏洞共享平台抓到了一样. 这是一条评论通知邮件,一开始我以为只是正常 ...

  4. C#中的9个“黑魔法”与“骚操作”

    C#中的9个"黑魔法"与"骚操作" 我们知道C#是非常先进的语言,因为是它很有远见的"语法糖".这些"语法糖"有时过于好 ...

  5. Git科普文,Git基本原理&各种骚操作

    Git简单介绍 Git是一个分布式版本控制软件,最初由Linus Torvalds创作,于2005年以GPL发布.最初目的是为更好地管理Linux内核开发而设计. Git工作流程以及各个区域 Work ...

  6. vue开发中的"骚操作"

    前言 在与同事协作开发的过程中,见识到了不少"骚操作".因为之前都没用过,所以我愿称之为"高级技巧"! Vue.extend 在交互过程中,有个需求就是点击图标 ...

  7. 用Markdown写Html和.md也就图一乐,真骚操作还得用来做PPT

    前言 和这篇文章一样,我就是用Markdown写的.相信各位平时也就用Markdown写写文档,做做笔记,转成XHtml.Html等,今天教大伙一招骚操作:用Markdown写PPT. 绝大多数朋友做 ...

  8. 你的哪些骚操作会导致Segmentation Fault😂

    你的哪些骚操作会导致Segmentation Fault 前言 如果你是一个写过一些C程序的同学,那么很大可能你会遇到魔幻的segmentation fault,可能一时间抓耳挠腮,本篇文章主要介绍一 ...

  9. Typescript骚操作,在TS里面直接插入HTML

    Typescript骚操作,在TS里面直接插入HTML,还有语法提示 先给大家看一个图 因为我不喜欢用很重的框架,主要是并非专业UI,但是偶尔会用到,还是觉得直接element组装受不了,想想能在ts ...

随机推荐

  1. this.current = params.page || 1 (前提是params对象一定要存在)

    this.current = params.page || 1 (前提是params对象一定要存在)

  2. priority_queue 中存放pair时,自定义排序的写法

    struct cmp {template <typename T, typename U> bool operator()(T const &left, U const & ...

  3. hdu2838 cow sorting用树状数组求逆序对

    题目链接:http://icpc.njust.edu.cn/Problem/Hdu/2838/ 题目解法:题目给出一个1-n的排列,操作只有一种:交换相邻的元素,代价是两个元素之和,问将该序列变成升序 ...

  4. Chrome80调整SameSite策略对IdentityServer4的影响以及处理方案(翻译)

    首先,好消息是Goole将于2020年2月份发布Chrome 80版本.本次发布将推进Google的"渐进改良Cookie"策略,打造一个更为安全和保障用户隐私的网络环境. 坏消息 ...

  5. 使用 Vue.js 改写 React 的官方教程井字棋

    React 的官方教程井字棋很好的引导初学者一步步走进 React 的世界,我想类似的教程对 Vue.js 的初学者应该也会有启发,于是使用 Vue.js 进行了改写 可以先查看最终的结果,尝试点击体 ...

  6. http服务部署

    [root@xiaoyi ~]# vim /etc/ssh/sshd_config 17行 Port 22 49行 PermitRootLogin yes 观察IP地址与物理机属于同一个网段 打开Fi ...

  7. 使用 xposed 突破饿了么 ssl pining

    作为一个对各种黑科技充满好奇心的前端工程师,这一次盯上了现在的外卖大佬-饿了么.这篇文章记录了抓包饿了么过程中碰到的问题,以及解决方案,希望能够大家带来一点收获. 工具 夜神模拟器 + charles ...

  8. 深度学习中正则化技术概述(附Python代码)

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 磐石 介绍 数据科学研究者们最常遇见的问题之一就是怎样避免过拟合. ...

  9. 最新SCI影响因子发布!Nature屠榜,AI领域Top 1000期刊盘点

    [导读]2018年度SCI期刊影响因子最新发布,Nature.Science.Cell三大神刊排名前列.新智元摘取其中有关人工智能.机器学习.计算机视觉.机器人学等领域的期刊并做简要介绍,希望对读者选 ...

  10. 使用 nodejs 对文件进行批量重命名

    0. 前言 从B站下载了一点视频,硕鼠自动将标题添加到了每个文件名的前面,导致文件名过长,不方面查看文件的具体内容. 虽然只有二十几个文件,但是手动删除前缀还是个不小的工作量,还有可能删除错误.考虑到 ...