前言

这篇文章包含了 Jerry 平时对于 Github 的一些特殊用法。目录如下:

1. 部署 HTML 应用到 Github 并运行

2. Github 和云平台的集成

3. ABAP Git 客户端

4. 用 Github 搭建个人博客

5. 一些提高工作效率的小窍门

6. Github 周边

如果您也有使用 Github 的小技巧,欢迎留言。

1. 部署 HTML 应用到 Github 并运行

这个技巧其实是把 Github 作为一个简单的 Web 容器使用。新建一个 Github 仓库,再新建一个 gh-pages 分支,将您的 HTML 项目文件保存并推送到该分支下。假设我开发了一个 Angular 应用,应用的入口页面是 angular_controller.html,那么将本地文件推送到 Github 后,使用如下格式的 url 访问该应用:

http://<your user name in github>.github.com/<repository_name>/angular_controller.html

我做的一个例子:

详细步骤参考我的博客:

Step by step to host your HTML application to Github

Jerry2014 年从 ABAP 开发转到 JavaScript 开发时,在网上搜集了很多开源的 JavaScript 库文件,一行一行调试,体会 JavaScript 大师们是如何把这门语言玩得出神入化的。

我把基于这些库文件开发的一共 91 个 HTML 应用都部署到了 Github 上,可以通过点击下面的链接来运行。

http://i042416.github.io/FioriODataTestTool2014/

下面是其中一个应用在手机上运行的效果。

2. Github 和云平台的集成

一个例子就是 Github 和 Salesforce 云平台 Heroku 的集成,对于开发人员来说使用非常简便。在 Heroku 上创建应用后,只需要点击 Connect to Github 按钮,

即可通过本地 Git 客户端向远端仓库的推送动作来触发 Github 向 Heroku 的自动部署。

也就是说,每次在本地做完修改,推送到 Github 远端仓库后,我们就可以直接访问 Heroku 上最新版本的应用了。

详细步骤参考我的博客:Step by step to host your UI5 application in Heroku

我部署在 Heroku 上的一个 UI5 应用:

https://jerrylist.herokuapp.com/ui5/

3. ABAP Git 客户端

一个开源的用 ABAP 实现的 Git 客户端,支持在 SAPGUI 里直接操作 Github 仓库。

abapGit - Welcome

如何使用?还是先在 Github 上创建一个空的仓库,然后执行 ABAP 客户端,将该仓库克隆(clone)到 ABAP 系统里某个包里。这个动作将 ABAP 系统这个包和 Github 上的仓库关联起来。

克隆完成后,一旦在 ABAP 包里创建 ABAP 的报表或者类等开发对象,这些对象会自动出现在 ABAP Git 客户端。

直接在 ABAP Git 客户端内将这些修改推送到 Github 上:

推送时和其他 Git 客户端一样,维护提交日志:比如 Jerry test comment:

用浏览器打开 Github 仓库,能看见从 ABAP Git 客户端推送的资源和日志:

4. 用 Github 搭建个人博客

早在 2012 年 8 月时,阮一峰老师就在他的个人博客网站上介绍了如何使用 Github 搭建个人博客:

搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门 - 阮一峰的网络日志

抛开技术本身不谈,在阮一峰老师这篇博客的评论区,网友们展开了激烈的讨论。部分朋友认为 Github 不应该滥用,只适合用来存储代码。

Jerry 对这种观点不置可否,下面是 SAP 成都研究院几位开发人员和我自己用 Github 搭建的个人博客:

  • http://www.tgf21.com - SAP 成都研究院 S/4HANA 开发团队 Tang Roam

  • http://duyue6002.github.io - SAP 成都研究院 C4C 开发团队 Du Rhea

  • http://jerrywang.vip

手机上打开这些搭建在 Github 上的个人博客,效果如图:

5. 一些提高工作效率的小窍门

在用户目录下编辑.gitconfig 文件,为常用的命令设置一些别名,比如用 git c 代替 git commit -m, 这样每次使用可以少敲击几次键盘。

修改用户目录下另一个文件.bash_profile,可以在里面写一些 shell 脚本,用 function 封装起来。每次在 Git 客户端输入这些 function 即可执行对应脚本。

目的还是少敲几次键盘完成同样的事情。假设使用这些小技巧每天能节省 2 分钟,一年下来能节省 12 个小时敲击键盘的时间。

6. Github 周边

两个有意思的和 Github 相关的 Chrome 扩展程序。

**Isometric Contributions:**使用 Chrome 打开 Github,能以柱状图的方式显示 contribution 明细。

**Octotree:**在屏幕左边以树形结构显示仓库内代码列表,方便查看代码。

有位老兄写了个工具,可以生成一些搞笑的 Github 提交记录图片(好像没什么用)。

GitHub - moonlightpoet/FunGithub: http://www.cnblogs.com/moonlightpoet/p/5716917.html

原理就是把程序指定的 Github 用户的首页下载到本地,再将 HTML 页面渲染成指定的字符串。

写一个控制台程序,指定 Github 用户名和想看到的字符串:

输出:

Github 无处不在:

最后一定要提一提这个仓库:

GitHub - houshanren/hangzhou_house_knowledge: 2017年买房经历总结出来的买房购房知识分享给大家,希望对大家有所帮助。买房不易,且买且珍惜。Sharing the knowledge of buy an own house that according to the experience at hangzhou in 2017 to all the people. It's not easy to buy a own house, so I hope that it would be useful to everyone.

到 2018 年 6 月 5 日为止,这个仓库已经超过 17000 的 Star。。。

不少房地产业内人士看了这个仓库的内容都大吃一惊。

这份买房攻略写十分透彻,逻辑清晰,从房产概念、板块知识、地价、配套规划、学区到区域价值分析等,一应俱全。对于只知写代码、不了解房地产的程序员来说,这就是一份“购房宝典”,成了他们买房前参考的重要资料。

对于这位同行,Jerry 只想说:厉害了,我的哥!