首页 > 其他分享 >Github——基于Git的代码托管平台

Github——基于Git的代码托管平台

时间:2024-05-29 11:26:03浏览次数:21  
标签:Git GitHub 项目 代码 托管 开源 Github 开发者

Github是一个基于Git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。Github 由Chris Wanstrath, PJ Hyett 与Tom Preston-Werner三位开发者在2008年4月创办。迄今拥有59名全职员工,主要提供基于git的版本托管服务。今天,GitHub已是:一个拥有143万开发者的社区。其中不乏Linux发明者Torvalds这样的顶级黑客,以及Rails创始人DHH这样的年轻极客。
这个星球上最流行的开源托管服务。目前已托管431万git项目,不仅越来越多知名开源项目迁入GitHub,比如Ruby on Rails、jQuery、Ruby、Erlang/OTP;近三年流行的开源库往往在GitHub首发,例如:BootStrap、Node.js、CoffeScript等。alexa全球排名414的网站。
下面是GitHub的图标和主页面:


一.GitHub发展历程:从代码托管到开发者生态的核心

2005年,在Git发布的时候,开源正经历着一场复兴。人们对Linux的兴趣非常强烈。第一个Web 2.0应用程序已经出现。许多公司将其技术堆栈迁移到开源服务器上。尽管Git通过引入分叉的概念使得在开源项目上的协作基本上不会耗费力气,但Git做不到的是:帮助程序员找到那些开源项目。很多程序员都在研究大量令人兴奋的开源项目,但很难找到它们。GitHub将会改变这一切。
2007年10月1日,普雷斯顿-沃纳和万斯特拉斯开始正式开发GitHub的第一个版本。他们永远改变了编程。
2008年,当汤姆·普雷斯顿-沃纳(Tom Preston-Werner)、克里斯·万斯特拉斯(Chris Wanstrath)和PJ·海伊特(PJ Hyett)合作完成一个项目的时候,他们只是把它当做一个周末项目,仅此而已。 但没过多久,他们就意识到,他们的想法可能比自己所设想的要大得多,将远远超过一个周末项目的范畴: 它将改变人们编写和分享代码的方式。这个想法就是 GitHub。2008年1月,经过长达三个月的周末编程冲刺、在餐巾上画线框图和通宵工作,万斯特拉提和普雷斯顿沃纳准备向世界揭开 GitHub 的面纱。正如Spotify在早期开发阶段所做的那样,GitHub最初是作为一个私人测试版发布的。万斯特拉斯和普雷斯顿-沃纳通过电子邮件向他们在海湾地区之外的创业公司的朋友们发送了邮件,邀请他们尝试他们一直在开发的工具。得到的反应非常积极。接下来的一个月,GitHub诞生,此前公司的名称是Logical Awesome。
2010年6月29日,GitHub推出了Organizations功能,这是一个允许企业用户集中管理组织拥有的存储库的工具。虽然引入企业组织在一定程度上是为了响应那些要求尝试GitHub的公司,并使其尽可能无障碍地采用GitHub,但它也揭示了公司未来的雄心。
2010年,创始人清楚地看到,收入增长最重要的载体,将是推动企业和组织层面采用GitHub。GitHub将在一年多后推出GitHub Enterprise,但Organizations清楚地表明了公司的意图。到2012年,GitHub已经变得非常受欢迎。
2012年,GitHub的增长令人瞩目。该公司创造了一个解决紧迫问题的坚实产品,并围绕一项新兴技术建立了一个完整的公司。
2015年,GitHub成为许多程序员进行版本控制的首选项。不仅如此:它还是一个社交中心,程序员可以相互学习。它是程序员聚集的网站、社交网络和专业网络中心。
2018年6月4日上午,微软以75亿美元收购GitHub。
在短短的10年里,GitHub 改变了人们的编程方式。 不仅让编程变得更简单,还改变了软件开发者对编程的看法。
2020年3月17日,GitHub宣布收购npm,GitHub保证npm将永远免费使用。
2021年11月4日消息,微软宣布GitHub CEO奈特·弗里德曼将于11月15日卸任,其职位由GitHub产品主管托马斯·多梅克接替。
2023年1月24日消息,微软GitHub发布博客称,将于2024年1月8日停止支持版本控制系统 Subversion,即SVN。
2024年1月22日,地平线公司宣布将纯视觉自动驾驶算法——Sparse4D系列算法开源,目前该算法已在GitHub平台上线。
二.主要用法和功能

  1. 管理软件开发:作为开源代码库以及版本控制系统,Github拥有超过900万开发者用户。随着越来越多的应用程序转移到了云上,Github已经成为了管理软件开发以及发现已有代码的首选方法。
  2. 分布式控制:如前所述,作为一个分布式的版本控制系统,在Git中并不存在主库这样的概念,每一份复制出的库都可以独立使用,任何两个库之间的不一致之处都可以进行合并。在GitHub进行分支就像在Myspace(或Facebook…)进行交友一样,在社会关系图的节点中不断的连线。
  3. 托管各种git库:GitHub可以托管各种git库,并提供一个web界面,但它与外国的SourceForge、Google Code或中国的coding的服务不同。GitHub的独特卖点在于从另外一个项目进行分支的简易性。为一个项目贡献代码非常简单:首先点击项目站点的“fork”的按钮,然后将代码检出并将修改加入到刚才分出的代码库中,最后通过内建的“pull request”机制向项目负责人申请代码合并。已经有人将GitHub称为代码玩家的MySpace。
  4. 开源项目免费托管:GitHub项目本身自然而然的也在GitHub上进行托管,只不过在一个私有的,公共视图不可见的库中。开源项目可以免费托管,但私有库则并不如此。Chris Wanstrath,GitHub的开发者之一,肯定了通过付费的私有库来在财务上支持免费库的托管这一计划。
  5. 方便团队开发:通过与客户的接洽,开发FamSpam,甚至是开发GitHub本身,GitHub的私有库已经被证明了物有所值。任何希望节省时间并希望和团队其它成员一样远离页面频繁转换之苦的人士都会从GitHub中获得他们真正想要的价值。
  6. 帮助初学者寻找开源代码:在GitHub,用户可以十分轻易地找到海量的开源代码。
  7. 不是程序员能用GitHub做什么,写书,写文档,搭建博客、个人网站或者公司官网,协作翻译,项目管理,科研项目及数据,设计资源库等。

三.特点

  1. 开源平台:GitHub是一个开源代码托管平台,许多开发者和组织将他们的项目以开源形式托管在GitHub上,使得用户可以自由查看、学习和贡献这些项目。

  2. 版本控制:GitHub基于Git版本控制系统,提供了强大的版本管理功能,可以跟踪代码的变化,管理不同版本的代码,方便团队协作和代码审查。

  3. 协作与社交:GitHub为开发者提供了丰富的协作工具,如问题跟踪、请求合并、代码审阅等,同时也是一个社交平台,用户可以关注其他开发者、项目,并进行交流和分享。

  4. 托管服务:GitHub提供了云端代码托管服务,用户可以将项目代码存储在GitHub的服务器上,实现备份、共享和访问,同时也支持私有仓库以及团队协作。

  5. 持续集成与部署:GitHub提供了Actions功能,可以进行持续集成、测试和自动部署,帮助开发者构建、测试和发布他们的代码。

  6. 开发者生态系统:GitHub拥有庞大的开发者社区和开源项目,为开发者提供了学习、交流和贡献的平台,同时也为企业提供了丰富的开源资源和人才库。

四.使用方法

  1. 创建GitHub账户
  2. 创建一个属于自己的库
  3. GitHub 的拉取请求工作流,创建分支,进行和提交更改,打开一个拉取请求,合并拉取请求。


  4. 将项目上传到GitHub:为项目创建新存储库
    将文件上传到项目的存储库,编辑项目存储库的 README 文件
  5. Git 和 GitHub 学习资源
    下载并安装最新的Git,使用来自Git的GitHub进行身份验证,需要使用 HTTPS 或 SSH 向 GitHub 进行身份验证。现在可以选择创建仓库以放置项目。 在存储库中保存代码可以备份代码并在世界各地共享。
  6. 从GitHub下载文件:导航到 octocat/Spoon-Knife。在文件列表上方,单击 “代码”

五.优缺点
优点:
几乎拥有全世界最多的开源代码,有众多非常知名的开源项目,也是本文中几个代码库中最出名的一个。支持多人共同完成一个项目,bugs 可以公开。代码开源这一块做的非常好。据说现在可以免费建私有仓库了,并且仓库数量无限制,但是唯一限制的是免费的私有仓库只能同时允许最多三个协作者,这对独立开发者和小开发团队来讲简直是福音。对 markdown 很友好,
缺点:
只提供英文,对于英文不好的人来说可能使用有障碍。只支持 git 格式代码托管,不对 csv,svn,hg 等进行支持。私有库有一点限制,就是对协作者的数量进行了限制。国内对 github 的访问速度可能比较慢。保护分支是收费的

标签:Git,GitHub,项目,代码,托管,开源,Github,开发者
From: https://www.cnblogs.com/2252708lyy/p/18219801

相关文章

  • Git Commit黑话
    小蒋:    面对令人头疼的git提交,仿佛看到了文言文一样咿咿呀呀羞涩难懂。所以这里按照一些经验和网络上的规则,提供一些明细。        规范通常遵循一种特定的格式,以确保提交信息的清晰和一致性。这种格式通常包括三个部分:Header、Body和Footer。以下......
  • github使用介绍
    GitHub是一个基于Git的代码托管平台,它允许开发者存储、管理和跟踪代码的变更。以下是GitHub的一些基本用法:注册账户:首先,你需要在GitHub官网注册一个账户。配置仓库:首先在本地创建sshkey;$ssh-keygen-trsa-C"[email protected]"后面的[email protected]改......
  • 源代码管理工具——GitHub
    GitHub是一个面向开源及私有软件项目的托管平台,拥有超过1亿的开发人员、400万以上的组织机构和3.3亿以上的资料库。自2008年4月10日正式上线以来,GitHub已经成为管理软件开发以及发现已有代码的首选方法。它主要基于Git版本控制系统,提供了包括代码托管、问题跟踪、代码审查、代码片......
  • 一键云部署:ROS的Terraform托管服务助你轻松上线2048经典游戏
    在现代云计算环境中,自动化部署已经成为一项重要的任务。Terraform,作为HashiCorp公司的一款开源工具,以其强大的基础设施即代码(IaC)能力,使得我们能够轻松管理和部署各种云资源。阿里云资源编排服务(ResourceOrchestrationService,ROS)是一种简单易用的云计算资源自动化部署服务,提供了......
  • Pycharm + Git 操作合集
    一、首先需要下载Git这里就不展示如何下载啦~~~二、在Pycharm中配置Git三、本地项目上传到远程仓库或从远程仓库Clone项目到Pycharm情况一:仓库有项目,放到Pycharm中1.拉取仓库使用Git来进行clone操作克隆远程仓库:打开VCS->Git->Clone,如......
  • GitHub 使用指南:开发者不可或缺的工具
    GitHub详细介绍GitHub是一个全球知名的代码托管和版本控制平台,广泛用于软件开发和协作。它基于Git版本控制系统,提供了大量功能,帮助开发者高效地管理代码和项目。一、GitHub基本概念Git:一个分布式版本控制系统,Git可以跟踪和记录文件的每一次更改,这样你就可以查看文件的历......
  • 十分钟快速上手!——github纯小白入门使用介绍
    github简介:GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。GitHub拥有1亿以上的开发人员,400万以上组织机构和3.3亿以上资料库。GitHub可以托管各种git库,并提供一个web界面,但它与外国的SourceForge、GoogleCode或中国的codi......
  • 源代码管理工具——Github介绍
    GitHub是一个全球领先的软件开发平台,它让超过5000万的开发者能够协同工作,托管和审查代码,管理项目,并共同构建软件。该平台基于Git,这是一个由Linux之父LinusTorvalds创建的开源分布式版本控制系统,旨在高效地处理从小型到非常大型的项目版本管理。GitHub的核心特点包括:代码托管......
  • GitHub——敏捷开发,CI/CD的倡导者和受益者
    1.简介GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。Github拥有1亿以上的开发人员,400万以上组织机构和3.3亿以上资料库。2.发展历程GitHub平台于2007年10月1日开始开发,由GitHub公司(曾称LogicalAwesome)的开发者ChrisWa......
  • Github介绍
    一、Github简介GitHub是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名GitHub。GitHub于2008年4月10日正式上线,除了Git代码仓库托管及基本的Web管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gi......