github的使用_动力节点Java学院整理

 更新时间:2017年08月16日 10:21:51   转载 作者:liaoxuefeng  
这篇文章主要为大家详细介绍了github使用的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

Github

成立于2008年 。基于Git,提供协作式代码版本控制服务。
总部在旧金山。

Git是一种良好的、支持分支管理的代码管理方式,能很好地解决团队之间协作的问题。每个工程师在自己本地分支上开发,完成功能之后再将所有人的代码合并。

吉祥物

名称:Octocat。

起源

最早从Rails开发社区兴起,Github本身也是用RoR框架写的。
早期的Rails多人协作开发团队,在代码提交和协作时遇到了很多的麻烦。为了解决团队之间开发协作困难的这一个问题,创始人Scott和其他3个程序员朋友,决定完善一个基于Git的代码分支管理工具,用来帮助Rails项目本身的开发。
这个项目做完之后,很多程序员发现,这个工具不但很好用,而且有着非常友好的用户界面,容易上手和操作。于是Scott等几个人干脆建立了一个网站,名叫"Github"来专门提供类似的服务。

创始人:5人骨干小组。

Scott Chacon:GithubGit布道师,Pro Git作者等。此外,还经常参加各种会议和活动,包括在全球范围内为企业提供Git培训。
Tekkub:客户关系。
Melissa Severini:行政。
Kyle Neath:设计。
Ryan Tomayko:开发。

公司经历

2011.10.26:Github开源Camfire机器人Hubot。
2012.2.28:YC孵化项目Coderwall聚合你在Github等网站上的项目,打造属于Geek的"技术名片"。
2012.5.22:获得Andreessen Horowitz投资,1亿美金投资,估值达8亿。
2012.10.6:推出单独教学页面,通过网络及面对面实体模式教授协同编程。
2013.2.1:创投界奥斯卡 "Crunchies 2012"最佳创业公司称号。
2013.2.16:发布Boxen套件,帮助你一键备份和部署新电脑。
2014.1.10:收购基于Web的页面设计工具Easel。

客户

KPI:注册用户突破400万,托管项目超过800万个。
商业模式:Freemium模式。免费用户能够进行项目代码托管,但是只能使用公共仓库。付费用户能够在Github上托管私人的库。

Github基本功能

Repository

分为公共仓库和私人仓库。仓库包含了所有的:版本、分支、标记信息。

Explore

发现、查看、研究Github上公共仓库中托管的代码项目。

Gist

有版本控制的代码粘贴服务,由此可以方便地共享文本或代码。
Blog

个人博客,只要向Github提交Commit就能发布新文章。

Watch

将感兴趣的仓库加入关注列表,如果所关注的仓库有更新会动态的进行邮件通知。

Star

一种更新的方式管理你所感兴趣的仓库的记录,任何之前预览过的仓库都能在其页面中找到。

Fork

最重要的功能之一,克隆别人仓库的代码到自己的项目中。可以作为子模块的形式使用,或二次开发。

Github项目前10名(根据Star数)

bootstrap:The most popular front-end framework for developing responsive, mobile first projects on the web,66640
jquery:JavaScript Library,30328
node:evented I/O for v8 javascript,28908
html5-boilerplate:A professional front-end template for building fast, robust, and adaptable web apps or sites,24871
d3:A JavaScript visualization library for HTML and SVG,24483
angular.js:http://angularjs.org,22589
Font-Awesome :The iconic font designed for Bootstrap,22060
rails:Ruby on Rails,21436
impress.js:It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com,19852
backbone:Give your JS App some Backbone with Models, Views, Collections, and Events,17611
homebrew:The missing package manager for OS X,16755

我们一直用GitHub作为免费的远程仓库,如果是个人的开源项目,放到GitHub上是完全没有问题的。其实GitHub还是一个开源协作社区,通过GitHub,既可以让别人参与你的开源项目,也可以参与别人的开源项目。

在GitHub出现以前,开源项目开源容易,但让广大人民群众参与进来比较困难,因为要参与,就要提交代码,而给每个想提交代码的群众都开一个账号那是不现实的,因此,群众也仅限于报个bug,即使能改掉bug,也只能把diff文件用邮件发过去,很不方便。

但是在GitHub上,利用Git极其强大的克隆和分支功能,广大人民群众真正可以第一次自由参与各种开源项目了。

如何参与一个开源项目呢?比如人气极高的bootstrap项目,这是一个非常强大的CSS框架,你可以访问它的项目主页https://github.com/twbs/bootstrap,点“Fork”就在自己的账号下克隆了一个bootstrap仓库,然后,从自己的账号下clone:

git clone git@github.com:michaelliao/bootstrap.git

一定要从自己的账号下clone仓库,这样你才能推送修改。如果从bootstrap的作者的仓库地址git@github.com:twbs/bootstrap.git克隆,因为没有权限,你将不能推送修改。

Bootstrap的官方仓库twbs/bootstrap、你在GitHub上克隆的仓库my/bootstrap,以及你自己克隆到本地电脑的仓库,他们的关系就像下图显示的那样:

如果你想修复bootstrap的一个bug,或者新增一个功能,立刻就可以开始干活,干完后,往自己的仓库推送。
如果你希望bootstrap的官方库能接受你的修改,你就可以在GitHub上发起一个pull request。当然,对方是否接受你的pull request就不一定了。

小结

在GitHub上,可以任意Fork开源仓库;
自己拥有Fork后的仓库的读写权限;
可以推送pull request给官方仓库来贡献代码。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 详解git仓库迁移的两种解决方案

    详解git仓库迁移的两种解决方案

    这篇文章主要介绍了详解git仓库迁移的两种解决方案,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • 分享几款linux下常见的vps控制面板

    分享几款linux下常见的vps控制面板

    VPS主机控制面板主要是用来控制和管理VPS服务器的,一般来说如果想要将VPS主机共享出来给多个人使用的话,我们就会采用类似于Cpanel、Virtualmin等主机控制面板。如果VPS主机只是一个人使用的话部落建议还是不要使用主机控制面板,以免带来不必要的安全隐患
    2017-07-07
  • http跟https有什么区别

    http跟https有什么区别

    这篇文章主要介绍了http跟https的区别,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2018-02-02
  • Spark自定义累加器的使用实例详解

    Spark自定义累加器的使用实例详解

    这篇文章主要介绍了Spark累加器的相关内容,首先介绍了累加器的简单使用,然后向大家分享了自定义累加器的实例代码,需要的朋友可以参考下。
    2017-09-09
  • Memcache缓存系统知识点梳理

    Memcache缓存系统知识点梳理

    Memcached是一个免费开源的,高性能的,具有分布式对象的缓存系统,它可以用来保存一些经常存取的对象或数据,保存的数据像一张巨大的HASH表,该表以Key-value对的方式存在内存中
    2012-09-09
  • win10 docker-toolsbox 搭建php开发环境的教程

    win10 docker-toolsbox 搭建php开发环境的教程

    这篇文章主要介绍了win10 docker-toolsbox 搭建php开发环境的教程,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • 在VPS上用3Proxy架设http代理和socks代理(Ubuntu环境)

    在VPS上用3Proxy架设http代理和socks代理(Ubuntu环境)

    前几天记录了在廉价的xen vps主机上通过squid架设http代理的情况,试用效果非常不错。但是现在需要增加socks代理,这方便squid就无能为力了,于是改用传说中的轻量级的NB代理软件3Proxy。
    2010-07-07
  • Linux Makefile与Shell的问题

    Linux Makefile与Shell的问题

    大概只要知道Makefile的人,都知道Makefile可以调用Shell脚本。但是在实际使用时,并不那么简单,一些模棱两可的地方可能会让你抓狂。你若不信,可以先看几个例子,想象一下这些这些例子会打印什么内容,记下你想象的结果,然后在计算机上运行这些例子,对照看一下
    2016-03-03
  • rsync 同步错误 cwrsync rsync error rsync error: some files/attrs were not transferred 解决方法

    rsync 同步错误 cwrsync rsync error rsync error: some files/a

    今天在帮客户配置机器的时候提示cwrsync rsync error rsync error: some files/attrs were not transferred,最终发现原来是用mcafee设置了文件权限不可写导致,特整理下方便需要的朋友
    2013-03-03
  • MongoDB 内存使用情况分析

    MongoDB 内存使用情况分析

    都说 MongoDB 是个内存大户,但是怎么知道它到底用了多少内存呢
    2013-07-07

最新评论