GitHub 愈来愈有名,不少同窗都把它做为一个关键字加入本身的简历当中。不过我在面试中,问到如何使用 GitHub,对方一般会答复:上去看源码呀!这个答案彻底没法让我满意,具体的缘由,一方面能够参考我以前的一篇文章《谈学习:读源码》,源码不是小说,直接看源码收获过小。另外一方面,看源码是一个太直接的逻辑推断——上面有源码因此我去看源码——我不认为这是一个细心耕耘慢慢养成的习惯。html
接下来我想简单谈一下,我认为应该如何使用 GitHub。git
一个 GitHub 仓库可不只仅是一份源代码那么简单。GitHub 是开发者社交平台,因此每一个项目在代码以外,都会有两个很是重要的模块:github
Issues 问题,包括 Bug,和其它使用者但愿有的功能面试
Pull Requests(PR) 其余的开发者在这个项目上作出了一些改进,或者修复了一些 Bug,但愿可以合并到 master 当中,就会发起 PR函数
完美的代码是不存在的,越是用的人多的库,存在的问题,或者说被发现的问题可能就越多。阅读其余人提的问题,不少时候能够得到不小的收获,好比,你们开发时都遇到了什么问题?有没有与我相似的状况?他们是怎么解决的?你们最想要的新功能是什么?有哪些值得关注?我能作什么?等等。学习
以及,多是更重要的,咱们应该怎么样经过 Issues 与仓库的原做者进行交流。测试
毕竟咱们每一个人的时间都是有限的,对于大部分开源的类库来讲,了解怎么用、有哪些问题、怎么避免踩坑,一般会比你知道它某个函数是怎么写的更有价值。网站
好的开源类库一般还会有一个作得很是到位的地方,即是它们的文档,作得一般详尽有价值。经过阅读文档,能够很快的了解这个仓库是干吗用的,应该怎么用,能解决哪些问题,以及接下来,它的发展方向是怎样的。代码规范
据我观察,文档一般分布在三个地方:code
README.md,也就是打开仓库页面,默认渲染在文件列表下面的那块
官方网站,一般在导航下方,仓库简介那里
wiki,经过导航连接能够到达
并非全部的仓库,都有开发者在进行积极地开发和维护。若是搜索到几年前的文章,被导引到一些比较古老的仓库,可能出于某种缘由,已经没人对它进行维护了,这个时候,该放弃就要放弃。
人生苦短,时间有限,总会有更具价值的仓库供咱们学习。
GitHub 还有一个热门趋势页面,从中你能够了解到全世界的开发者都在关注哪些仓库,你能够把本身感兴趣的那些加星标记一下,未来不定时的翻一翻看一看它的 Issue、PR 和文档,一般都会有不小的收获。
GitHub 还提供给咱们一个很是好的静态网站空间,彻底免费,全世界都有 CDN,不用白不用。即是传说中的 GitHub Pages。
咱们能够用它写博客,作笔记,重点是内容彻底能够进行版本管理。
具体作法请自行 Google。
我以为这件事和写博客同样,若是你只是在纸上记笔记给本身看,那多半会不求甚解;可是你想到写成博客总会有人看到,那多半仍是会把要写的内容搞清楚,写全面,逻辑清晰可自洽。因此写博客是比记笔记更好的学习方法。以此类推,把本身的仓库推到 GitHub,也理应也是比在本地练习更好的学习方式。
这里毫不鼓励你们乱来,相反,我但愿你们对本身的行为负责,重视 Issue 和 PR,毕竟都是提给其余开发者的,或多或少都会对别人形成影响。因此在提以前,十分有必要阅读仓库主人的提交须知,按照对方的代码规范书写代码,写好相关测试,而后再提交。作到言之有物,切不可乱来画猫。
这篇文章不是传授你们应聘技巧的,而是但愿分享本身的一些经验,让你们可以经过 GitHub 这个世界上最大的代码托管平台,正确的学习开发技巧。
若是您有相关的经验技巧,欢迎交流。
人肉与 个人博客 同步。