Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何在 GitHub 上高效阅读源码?

如何在 GitHub 上高效阅读源码?

原创
作者头像
AlwaysBeta
发布于 2021-12-21 08:17:16
发布于 2021-12-21 08:17:16
4530
举报
文章被收录于专栏:AlwaysBetaAlwaysBeta

原文链接: 如何在 GitHub 上高效阅读源码?

之前听说过一个故事,一个领导为了提高团队战斗力,把团队成员集中起来,搞封闭开发,重点还是在没有网的条件下。

结果就是一个月过去了,产出基本为零。

我发现,如果没有网,程序员基本上是写不出代码了。现在做什么功能之前,先到网上搜搜看,然后直接复制粘贴搞定。

最实用的技术就是这么朴实无华。

而大部分的代码都是在 GitHub 上找的,可以这么说,GitHub 基本上撑起了程序员一半的工资。

那如果不想把代码 clone 到本地,怎么在 GitHub 上高效阅读源码呢?

我最开始用的是一个插件,叫 Octotree

有了这个插件之后,在页面的最左侧会多一个目录树。这样的话,就可以快速查看项目的整体目录结构,而且在切换文件时也会更加流畅,再也不用来回刷新页面了。

细心的小伙伴可能也发现了,上面的截图还有一处不同,就是页面中央多了一个「GitHub1s」按钮。

没错,这就是我要介绍的第二个插件。

点击这个按钮之后呢,就会呼出在线版的 VS Code,然后使用 VS Code 打开代码仓库,直接享受 IDE 的体验。

如果想直接通过网址来打开也是可以的,比如我的项目地址是:

https://github.com/yongxinz/id-maker

只需要将地址稍稍改动,加一个 1s 即可:

https://github1s.com/yongxinz/id-maker

那么这个 1s 到底是什么意思呢?官方是这么说的:

One second to read GitHub code with VS Code.

当然了,我们也可以把代码拉下来,自己部署。然后根据服务响应的快慢,起个名字叫 2s 或者 3s 都可以。

虽然这种方式已经很方便了,但还有一个缺点,就是打开的代码是只读的,不能编辑。比如我只想改几个很小的点,那么不好意思,还是要把代码 clone 下来,走一遍提交流程。

那还有更好的方式吗?

当然有。

终于到重点了,隆重推出由官方支持的方式:只需要在代码仓库页面按一下 . 就可以直接使用 VS Code 打开,而且支持编辑。

Press the . key on any repository or pull request, or swap .com with .dev in the URL, to go directly to a VS Code environment in your browser.

也可以通过地址访问,把 .com 改成 .dev,比如:

https://github.dev/yongxinz/id-maker

太方便了,太优雅了。感觉好多操作都可以直接在浏览器里搞定了。

微软还是厉害。曾几何时,我记得微软在网上骂声一片,对其收购 GitHub 也持悲观态度。但人家现在开源项目已经上千个了,还在不断贡献。而且产品也越做越好,别的不说,单靠 VS Code 就俘获了多少程序员的芳心。

科技公司还是得踏踏实实搞技术,诚心诚意做产品,搞其他花里胡哨的东西没啥用。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
中国台湾大学林轩田机器学习技法课程学习笔记10 -- Random Forest
上节课我们主要介绍了Decision Tree模型。Decision Tree算法的核心是通过递归的方式,将数据集不断进行切割,得到子分支,最终形成数的结构。C&RT算法是决策树比较简单和常用的一种
红色石头
2017/12/28
9190
中国台湾大学林轩田机器学习技法课程学习笔记10 -- Random Forest
通俗解释随机森林算法
首先我们来复习一下之前介绍过的两个机器学习模型:Bagging和Decision Tree。Bagging是通过bootstrap的方式,从原始的数据集D中得到新的D^;然后再使用一些base algorithm对每个D^都得到相应的gt;最后将所有的gt通过投票uniform的形式组合成一个G,G即为我们最终得到的模型。Decision Tree是通过递归形式,利用分支条件,将原始数据集D切割成一个个子树结构,长成一棵完整的树形结构。Decision Tree最终得到的G(x)是由相应的分支条件b(x)和分支树Gc(x)递归组成。
红色石头
2022/01/12
3620
通俗解释随机森林算法
【机器学习-监督学习】集成学习与梯度提升决策树
  本文将会首先介绍集成学习的思路以及一些常用的集成学习方法,然后介绍梯度提升决策树模型。在前面的文章中,我们讲解了许多不同的机器学习算法,每个算法都有其独特的优缺点。同时,对于同一个任务,往往有多种算法可以将其解决。例如我们要将平面上的一些点分类,假设算法一和算法二的正确率是75%,算法三是50%。3种算法都已经通过调参达到了其最优表现,已经无法再进一步了。那么,我们是否能通过组合这些算法,得到比75%更高的正确率呢?看上去组合之后,算法三会拖算法一和二的后腿,反而会拉低整体表现,更别说提升了。然而,我们考虑表1中的例子。
Francek Chen
2025/01/22
1850
【机器学习-监督学习】集成学习与梯度提升决策树
随机森林算法及其实现(Random Forest)
  作为新兴起的、高度灵活的一种机器学习算法,随机森林(Random Forest,简称RF)拥有广泛的应用前景,从市场营销到医疗保健保险,既可以用来做市场营销模拟的建模,统计客户来源,保留和流失,也可用来预测疾病的风险和病患者的易感性。最初,我是在参加校外竞赛时接触到随机森林算法的。最近几年的国内外大赛,包括2013年百度校园电影推荐系统大赛、2014年阿里巴巴天池大数据竞赛以及Kaggle数据科学竞赛,参赛者对随机森林的使用占有相当高的比例。此外,据我的个人了解来看,一大部分成功进入答辩的队伍也都选择了Random Forest 或者 GBDT 算法。所以可以看出,Random Forest在准确率方面还是相当有优势的。
全栈程序员站长
2022/07/25
1K0
随机森林算法及其实现(Random Forest)
统计学习导论 Chapter8 -- Tree-Based Methods
Book: An Introduction to Statistical Learning with Applications in R http://www-bcf.usc.edu/~g
用户1148525
2018/01/03
1.4K0
统计学习导论 Chapter8 -- Tree-Based Methods
MLlib中的Random Forests和Boosting
【编者按】本文来自Databricks公司网站的一篇博客文章,由Joseph Bradley和Manish Amde撰写。此外,Databricks是由Apache Spark的创始人建立的,成立于2013年年中,目前团队人员均是开源圈子内的重量级人物,他们都热衷于"增值开源软件": 任职CEO的Ion Stoica是UC Berkeley计算机教授、AMPLab联合创始人,同时也是Conviva公司的联合创始人。 CTO Matei Zaharia是Apache Spark的创作者,同时也是麻省理工学院计
用户1737318
2018/06/05
3490
第8章 集成学习 笔记
将多个分类器的预测结果进行组合得到最终决策,来获得更好的分类及回归性能。单一分类器只适合于某种特定类型的数据,很难保证得到最佳分类模型,如果对不同算法的预测结果取平均,相比一个分类器,可能会获得更好的分类模型。bagging, boosting和随机森林是应用最广泛的三类集成学习算法。
用户1075469
2022/03/04
5240
第8章 集成学习 笔记
机器学习算法:随机森林
在本文[1]中,我想更好地理解构成随机森林的组件。为实现这一点,我将把随机森林解构为最基本的组成部分,并解释每个计算级别中发生的事情。到最后,我们将对随机森林的工作原理以及如何更直观地使用它们有更深入的了解。我们将使用的示例将侧重于分类,但许多原则也适用于回归场景。
数据科学工厂
2023/02/27
4860
机器学习算法:随机森林
从决策树到随机森林:树型算法的原理与实现
选自Github.io 作者:Sadanand Singh 机器之心编译 基于树(Tree based)的学习算法在数据科学竞赛中是相当常见的。这些算法给预测模型赋予了准确性、稳定性以及易解释性。和线性模型不同,它们对非线性关系也能进行很好的映射。常见的基于树的模型有:决策树(decision trees)、随机森林(random forest)和提升树(boosted trees)。 在本篇文章中,我们将会介绍决策树的数学细节(以及各种 Python 示例)及其优缺点。你们将会发现它们很简单,并且这些内
机器之心
2018/05/09
2.2K0
从决策树到随机森林:树型算法的原理与实现
机器学习——动手从决策树实现随机森林
今天是机器学习专题的第26篇文章,我们一起聊聊另外一个集成学习模型,它就是大名鼎鼎的随机森林。
TechFlow-承志
2020/06/24
7180
原理+代码,总结了 11 种回归模型
本文所用数据说明:所有模型使用数据为股市数据,与线性回归模型中的数据一样,可以做参考,此处将不重复给出。
数据STUDIO
2021/06/24
4.8K0
机器学习算法:随机森林
在本文中,我想更好地理解构成随机森林的组件。为实现这一点,我将把随机森林解构为最基本的组成部分,并解释每个计算级别中发生的事情。到最后,我们将对随机森林的工作原理以及如何更直观地使用它们有更深入的了解。我们将使用的示例将侧重于分类,但许多原则也适用于回归场景。
数据科学工厂
2023/02/13
5360
独家 | 决策树VS随机森林——应该使用哪种算法?(附代码&链接)
本文以银行贷款数据为案例,对是否批准顾客贷款申请的决策过程进行了算法构建,并对比了决策树与随机森林两种机器学习算法之间的异同及各自的优劣。
数据派THU
2020/06/15
2K0
Using many Decision Trees – random forests使用多棵决策树--随机森林
In this recipe, we'll use random forests for classification tasks. random forests are used because they're very robust to overfitting and perform well in a variety of situations.
到不了的都叫做远方
2019/11/29
6920
随机森林,random forest
模型组合(比如说有Boosting,Bagging等)与决策树相关的算法比较多,这些算法最终的结果是生成N(可能会有几百棵以上)棵树,这样可以大大的减少单决策树带来的毛病,有点类似于三个臭皮匠等于一个诸葛亮的做法,虽然这几百棵决策树中的每一棵都很简单(相对于C4.5这种单决策树来说),但是他们组合起来确是很强大。 在最近几年的paper上,如iccv这种重量级的会议,iccv 09年的里面有不少的文章都是与Boosting与随机森林相关的。模型组合+决策树相关的算法有两种比较基本的形式 - 随机森林与GBD
学到老
2018/03/16
5910
随机森林,random forest
[白话解析] 通俗解析集成学习之bagging,boosting & 随机森林
本文将尽量使用通俗易懂的方式,尽可能不涉及数学公式,而是从整体的思路上来看,运用感性直觉的思考来解释 集成学习。并且从名著中延伸了具体应用场景来帮助大家深入这个概念。
罗西的思考
2020/09/07
9020
机器学习算法之随机深林算法
说好的PCA算法先暂时鸽一下,因为还没写完,大概明天发,先发一个机器学习比赛中常见的bagging算法之一:随机深林算法。需要结合之前发的那篇决策树算法一起看。
BBuf
2019/12/04
7620
机器学习算法之随机深林算法
【机器学习基础】数学推导+纯Python实现机器学习算法26:随机森林
自从第14篇文章结束,所有的单模型基本就讲完了。而后我们进入了集成学习的系列,整整花了5篇文章的篇幅来介绍集成学习中最具代表性的Boosting框架。从AdaBoost到GBDT系列,对XGBoost、LightGBM和CatBoost作了较为详细的了解。本文作为集成学习的最后一篇文章,来介绍与Boosting框架有所不同的Bagging框架。
黄博的机器学习圈子
2020/07/23
9100
【机器学习基础】数学推导+纯Python实现机器学习算法26:随机森林
机器学习–组合分类方法之随机森林算法原理和实现(RF)
上一节我们详细的介绍了组合分类方法中的boosting提升算法中经典的adaboost提升算法,当然还有其他的提升算法例如:前向分步算法(adaboost算法是该算法的一个特殊情况,)、提升树算法(基于加法模型和前向分布算法),其中提升树的学习算法即损失函数有:平方误差损失函数、指数损失函数、梯度损失函数等在这里就不细讲他们了,因为他们的算法思想都是基于boost提升的,只是学习算法不同罢了,有兴趣的同学可以参考李航的《统计学习方法》,这本书有提到上面的算法。
全栈程序员站长
2022/07/25
1.5K0
机器学习–组合分类方法之随机森林算法原理和实现(RF)
MADlib——基于SQL的数据挖掘解决方案(25)——分类之随机森林
装袋(bagging)又称自助聚集(bootstrap aggregating),是一种根据均匀概率分布从数据集中重复抽样(有放回的)的技术。每个自助样本集都和原始数据集一样大。由于抽过程是有回放的,因此一些样本可能在同一训练数据集总出现多次,而其它一些却可能被忽略。一般来说,自助样本
用户1148526
2019/05/25
1.1K0
推荐阅读
相关推荐
中国台湾大学林轩田机器学习技法课程学习笔记10 -- Random Forest
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档