lovetg0 2020-05-27
GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。对程序员来说,GitHub 是程序员开源精神之所系。在这个神奇的开源社区,职业程序员和编程爱好者畅所欲言,探寻自己感兴趣的项目、分享源代码、交流学习
GitHub 于 2008 年 4 月 10 日正式上线,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其托管版本数量非常之多,而且其中不乏知名开源项目,例如 Ruby on Rails、jQuery、python 等。
作为开源代码库以及版本控制系统,Github 拥有超过千万的开发者用户。随着越来越多的应用程序转移到了云上,Github 已经成为了管理软件开发以及发现已有代码的首选方法。
如前所述,作为一个分布式的版本控制系统,在 Git 中并不存在主库这样的概念,每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。
GitHub 可以托管各种 Git 库,并提供一个 web 界面,但与其它像 SourceForge 或 Google Code 这样的服务不同,GitHub 的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的Fork的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的pull request机制向项目负责人申请代码合并。
GitHub 项目本身自然而然的也在 GitHub 上进行托管,只不过在一个私有的,公共视图不可见的库中。开源项目可以免费托管,但私有库则并非如此。在 GitHub,用户可以通过Explore轻而易举地找到海量的开源代码。因此,称之为程序员的 圣地。
优势:
1.完整的支持Markdown语言,而且支持Emoji表情
2.支持直接复制图片到页面,会自动上传图片(非常好的功能,知乎也支持)
3.比较好的支持Mobile。虽然github没有手机客户端,但是一般开发者,写好的blog都会通过微博进行分享,所以点击过来之后,就可以在手机浏览器里面访问。
4.使用github原生的功能,就可以进行类似评论的功能
5.支持@用户功能
6.支持标签,当然是你repository里面
7.强调个人,符合hacker更看重名誉/成就感的天性
8.功能设计简洁实用上手很快,可用性好,已有很多相当质量的各类项目和优秀开发者在上面。
劣势:
(对个人而言)
1.GitHub 使用 git 分布式版本控制系统,而 git 最初是 Linus Torvalds 为帮助Linux开发而创造的,它针对的是 Linux 平台,git 和 Windows 从来不是最好的朋友,因为它一点也不像 Windows。GitHub 发布了GitHub for Windows,为 Windows 平台开发者提供了一个易于使用的 Git 图形客户端。
2.国内访问速度太慢,经常出现connect time-out
3.不能很好的解决GB2312/GBK,对中文不够友好
4.wiki功能太弱,直接导致文档(对于开源项目很重要)经常被分离到一个独立站点
(对企业而言)
5.免费套餐不支持私有项目,无非解决企业内部的需求,github:fi价格过高(最便宜要$5,000/年)
6.基于git,学习曲线陡峭,企业大规模用git根本不现实。尤其国内大家都刚学会svn
7.github有时可能被墙,或者不稳定
8.没有集成社交分享功能。比如后面可以分享到微博,微信朋友圈等。之前有人建议我去做插件,有时间看看这个。(据说是这样我还没有考证)
总结:
以上的结论都是我根据网上介绍的出来的,我对Github暂时还没有太多的了解,也许在使用过后我还用来更正或者完善总结。