H5前端开发社区专注更多编程教程和电子书天天在用钱

原文:https://hackernoon.com/12-cool-things-you-can-do-with-github-f3e0424cf2f0

翻译:https://zhuanlan.zhihu.com/p/29274260

简评:解放生产力的,GitHub 使用指南。

#1 在 Github 上编辑代码

我要先说一个很多人都知道的事儿。

当你使用 GitHub,看一些文件(任何的文本文件或者仓库),能看到一个顶部右侧有一个小铅笔图标。点击即可编辑文档。完成后,按照提示点击「Propose file change」,GitHub 会为你 fork 这个仓库并创建一个 pull request。

很帅吧,GitHub 为你创建了一个分支。

不需要 fork / pull / 改变 locally / push / 创建 PR,只需点击一下,就可以创建分支。


这对于改一些排版错误或者防恶意篡改是很有帮助的。

#2 粘贴图像

对于 issue 和 comment,你还可以直接粘贴图片,当你粘贴时图片会被上传至云端,然后以 MarkDown 格式显示。

非常简洁。

#3 格式化代码

如果你想写一个 code block,你可以在开始处写三个反引号,然后 GitHub 会试图猜出你在写什么语言。

但是如果你发布如 Vue、Typescript、JSX 这样的语言,你可以明确写出来,以获取正确的高亮。

下图第一行使用了 ```jsx:


片段呈现:


(这可以扩展到 gist,顺便一提,如果你给了 gist 定义成 .jsx 扩展名,那么你会得到 JSX 的高亮)

Github 支持语言列表

#4 使用魔术词在 PR 中关闭 issue

比如你在创建一个 pull request 去修复 issue #234。那你可在 PR 输入「fixes #234」,就可以自动合并 PR 并关闭这个 issue,是不是很酷。

(提交信息里可以使用 fix/fixes/fixed , close/closes/closed 或者 resolve/resolves/resolved等关键词,更多请查看 help)

#5 链接到 comment

你甚至想链接到一个特定的评论,但无法做到?我在这里告诉你,点击名字旁边的日期/时间就万事大吉。


#6 链接到代码

既然能链接到 comment,那你想问能不能链接到代码上?可以的。

试试这个操作:在查看文件时,点击代码边上的行数。

哇喔,你看到了么?URL 随之更新。如果你按住 Shift 并单击另一个行号,URL 会再次更新,并且高亮这两个行数之间的所有代码段。

你现在可以分享这个 URL 了,但等等,这些还是当前分支,如果文件变化了呢?你需要一个永久链接。

我比较懒,但是下面这一个截图已经能够表达如何获取永久链接了(Copy Permalink):


##7 像使用命令行一样使用 GitHub URL

既然说到了 URL,那么久接着聊一下。使用 UI 浏览 GitHub 很方面也很好,不过很多时候最快的方式是使用 URL 来浏览。举个例子,如果我想跳转到正在处理的分支上,并想查看分支和 master 的差异,我可以在我的仓库名后面输入 /compare/branch-name。

下简单说,查看 master 和分支的区别,如下图:


可以在名字后面再加上...XXX(分支名)比如我写的 mkdocs...pre-release,如下图:


这一步你可以配合键盘快捷键,Ctrl + L 或者 cmd + L,可以让光标直接移动到 URL 中(最起码 chrome 是这样)。这些加一起能提高生产力。

专业提示:用键盘移动 chrome URL 上的某一条网页记录,使用 Shift+Delete 或 Shift+fn+Delete 来删除某一条记录。(比如合并了分支之后就可以删除了)

#8 在 issue 中创建 list

你想在你的 issue中看到可多选的 list 么?


当你查看问题时,你想不想让它变成 2 of 5 这样的形式。


如果想,你可以在 issue 中使用以下句法:

- [ ] Screen width (integer) - [x] Service worker support - [x] Fetch support - [ ] CSS flexbox support - [ ] Custom elements

#9 GitHub 上的 project board

我总是用 Jira 做大项目,独立项目用 Trello,这两者我都很喜欢。


后来我知道,GitHub 也有类似的 project board:


我个人为了方便把它们都添加为 note。board 极为方便的帮助你做仓库管理。

你可以点击右上角 Add Cards 来添加东西。这里有些特殊语法方便搜索,比如:is:pr is:open,你就可以把任何公开的 PR 拖到 board 上。

更多语法可以参考 search syntax 。


你也可以把现存的 note 转化为 issue。


你也可以选择 issue 直接添加到 projects 。


这些意味着,从现在开始,你可以明确责任制度,每一行代码的分配都可以在 GitHub 上的 Project board 上完成而不用去 Jira 或者 Trello 上。

不过它也有些缺点,比如功能比较少。你也可以试试 ZenHub,它有效的扩展 GitHub。

更多关于 board 的问题可以访问:GitHub help on Projects.

#10 GitHub WiKi

GitHub WiKi 能够帮助我们处理非结构化的页面集合,就像维基百科那样。我自己 NodeJS docs 就被我弄成 wiki 的样子。几个页面,然后自定义侧边栏。具体方法网上很多,我的页面可以供你参考一下。


建议:如果你有个特别长的单页面 README.md 文件,并且想和其他人有所区别,你可以试试这种形式。

#11 GitHub Pages(JekyII)

你可能已经知道了能使用 GitHub Pages 来托管静态网站。那本条就特别介绍一下如何使用 JekyII 来构建站点。

以最简单的方式,GitHub Pages + JekyII 将以最漂亮的主题来呈现你的 README.md,例如,你可以看一下 about-github 的自述文件。


在 GitHub 的 my site 中,点击 setting,打开 GitHub Pages,选择一个 JekyII 主题


就会得到一个 Jekyll 主题页面:


它的优点是:

  • 轻量级网站,响应速度快
  • 网站更安全,无数据库,无动态数据
  • 无需通入过多精力维护

注意,他需要 Ruby 在本地运行,Mac 自带,Windows 用户自行安装。

#12 把 GitHub 当 CMS 用

你的网站需要显示一些文字,但是你还不想直接放在 HTML 里面,那你可以把 GitHub 作为你储存内容的一个地方。这样,就可以让任何一个非程序员通过修改 Markdown 来修改 HTML 网页的内容。

我的方法是:在你的 GitHub 仓库中使用 markdown 文件来保存文本。在你网站的前端用一个组件来抓取这些文本并呈现在网页上。

我是玩 React 的,这里有个组件,用以抓取,解析并呈现到 HTML 上。

class Markdown extends React.Component { constructor(props) { super(props);class Markdown extends React.Component {    constructor(props) {      super(props);

      // replace with your URL, obviously       this.baseUrl = 'https://raw.githubusercontent.com/davidgilbertson/about-github/master/text-snippets';

      this.state = {        markdown: '',      };    }

    componentDidMount() {      fetch(`${this.baseUrl}/${this.props.url}`)        .then(response => response.text())        .then((markdown) => {          this.setState({markdown});        });    }

    render() {      return (        <div dangerouslySetInnerHTML={{__html: marked(this.state.markdown)}} />      );    }} 

(/text-snippets 这个文件夹是储存我的 markdown)

下面这段代码是上面组件的示例:

const Page = () => (  <div className="page"><div className="about-us"><Markdown url="about-us.md" />div><div className="disclaimer"><p>A very important disclaimer:p><Markdown url="disclaimers/home-page-disclaimer.md" />div>div>); 

所以现在 GitHub 也是你的 CMS,无论你想要样大小的文字都可以。

推荐一个 GitHub 工具

Octotree Chrome extension

它可以让你在看任何仓库时,获得一个左边的树状图。


以上。

希望能够对你有所帮助,have a nice day!

原文:12 cool things you can do with GitHub

●如何从初级程序员顺利晋升到高级程序员?

●ES6、ES7、ES8学习指南

●实现B站弹幕很难么?这个开源项目了解一下

●浅谈外包、小型创业、中型创业和大厂的前端体验

*版权声明:转载文章和图片均来自公开网络,版权归作者本人所有,推送文章除非无法确认,我们都会注明作者和来源。如果出处有误或侵犯到原作者权益,请与我们联系删除或授权事宜。

温馨提示

返回上一级 回复 “前端” , "视频"……等你要的资源的关键词,即可得到内部电子书和视频,或参考关键词回复功能这篇文章

长按关注

H5前端开发社区

你点的每个“在看”,我都认真当成了喜欢

github使用指南_GitHub 上的 12 个骚操作相关推荐

  1. github初学者指南_GitHub初学者指南

    github初学者指南 从Google到白宫,每个人都在GitHub上 . 如果您不知道GitHub是什么,请继续阅读,因为我还将讨论为什么它是我最喜欢的网站之一,并分享一些最受欢迎的功能. 什么是G ...

  2. github使用指南(史上最全)

    1.简介 首先,我先对GitHub来一个简单的介绍,GitHub有一个很强大的功能就是,你在服务器上边可以创建一个库(稍后会介绍怎么创建),写代码是一件很重的任务,尤其是很多人完成一个很大的项目的时候 ...

  3. 体验 Chrome 开发者工具的 12个骚操作!

    来源:老姚 https://juejin.cn/post/6844903604839514125 对于每个前端从业者来说,除了F5键之外,用的最多的另外一个键就是F12了. 今天,大神(@小鱼二)推荐 ...

  4. GitHub使用指南!(ubuntu)

    http://blog.csdn.net/banxi1988/article/details/6555293 <!-- @page { margin: 2cm } P { margin-bott ...

  5. Git 经验总结及 Git GitHub 学习指南

    1. 前言 本文主要分为两部分,前一部分是本人学习和工作中使用 Git 的总结经验,后半部分是总结的 Git & GitHub 的学习指南.如果想直接体系学习,可以直接按照指南路线学习.如果你 ...

  6. Github全程指南-如何高效使用

    Github全程指南-如何高效使用 2016年06月29日 11:32:38 阅读数:2535 作为一名开发者,Github上面有很多东西值得关注学习,可是刚刚接触github,怎样一步步学习使用Gi ...

  7. 你肯定不知的12个GitHub骚操作,学起来~

    解放生产力的,GitHub 使用指南. 1 在 GitHub 上编辑代码 查看全文 http://www.taodudu.cc/news/show-5684933.html 相关文章: React v ...

  8. 使用 GitHub Actions 在 EKS 上部署 InterSystems IRIS 解决方案

    假设你想了解 InterSystems 在数据分析方面能提供什么. 你研究了理论,现在想要进行一些实践. 幸运的是,InterSystems 提供了一个项目:Samples BI,其中包含了一些很好的 ...

  9. 极客日报第 66 期:人人影视字幕组因侵权被查;GitHub 评论区支持上传视频;拼多多将春节红包加至 28 亿;任正非就注册姚安娜商标事件道歉

    文章目录 一.互联网快讯 二.程序员专属 三.Github 每日精选 四.CSDN 社区优质博文精选 一.互联网快讯 1.用户起诉腾讯,深圳南山法院一审判决认定:微信好友关系不属于个人隐私 2 月 3 ...

最新文章

  1. 虚拟机安装CentOS以及SecureCRT设置【完美无错版】
  2. 重装IDEA再也不愁了,一招搞定同步个人配置!
  3. 如何优化Golang中重复的错误处理
  4. py脚本得到Python的版本
  5. 并发编程(十六)——java7 深入并发包 ConcurrentHashMap 源码解析
  6. 详解Python字符串编码格式
  7. [微信小程序开发] 用wx.navigateTo方法跳转到tabBar中被定义了的页面将无法跳转
  8. 转载:世上最全的百物妙用窍门-绝对不能错过,不断更新中
  9. 令人失望的vb 的范型
  10. JAVA 蔡羽 基础知识漫谈
  11. 算法-01-二分查找/插值查找
  12. 程序员发展职业规划_程序员做到以下几点,十年之后才不会被淘汰
  13. Linux-nohup命令详解
  14. EP100底层封装-LibCreateSourceFile()函数
  15. 第二次作业,问卷星的使用
  16. RESTORE 还原数据库
  17. 计算机粘贴复制快捷键,详细教你使用电脑复制粘贴快捷键
  18. android 服务注册,android-无法注册NSD服务
  19. Windows应用程序设计基础(常用控件2)
  20. 肇庆学院与韶关学院计算机专业,2016韶关学院VS肇庆学院 基于排名角度的比较?...

热门文章

  1. web开发兼容性测试工具
  2. 自动翻转html,css--图片翻转二:自动翻转
  3. 模拟鱼群的matlab算法,IFSA人工鱼群算法
  4. mysql root dengru_Mysql学习Mysql中文汉字转拼音的实现(每个汉字转换全拼)
  5. JAVA Long String类型之间的转换
  6. Python之路--协程/IO多路复用
  7. 使用Docker+Jenkins自动构建部署
  8. CentOS安装EPEL源
  9. 多线程上下文切换优化与注意
  10. jquery.chosen.js实现模糊搜索