github :软件项目托管平台

更新时间:2023-06-03 17:43

GitHub是一个用于版本控制和协作的代码托管平台。它允许您和其他人从任何地方共同处理项目。由开发者Chris Wanstrath、P. J. Hyett和汤姆·普雷斯顿·沃纳使用Ruby on Rails编写而成。 运用领域为Git 的分布式版本控制,以及每个项目的访问控制、错误跟踪、软件功能请求、任务管理、持续集成和 wiki。总部位于加利福尼亚州,自 2018 年以来一直是微软的子公司。

截至2023年6月,GitHub报告称拥有超过1亿名开发者和超过4.27亿个代码库,其中至少有3200万个公共代码库。

历史

GitHub平台的开发始于2007年10月19日。该网站由Tom Preston-Werner、Chris Wanstrath、P. J. Hyett和Scott Chacon于2008年4月推出,此前几个月作为测试版本进行了一段时间的试运行。GitHub每年都举办一次名为GitHub Universe的主题演讲大会。

2008年推出初期GitHub以其简洁、直观的用户界面而受到开发者的欢迎。相比于其他代码托管平台,GitHub的界面设计更加简洁明了,易于使用和导航。最初GitHub的创新之处在于将社交网络的概念引入代码托管平台。用户可以关注其他开发者、关注项目、参与讨论,以及跟踪项目的更新。

2009年,GitHub推出了“Fork”功能,后续提出了关注(Follow)的概念,使开发者可以在原始代码的基础上创建自己的分支,并进行修改和改进。

随着时间的推移,GitHub的用户数量迅速增长。到了2010年,GitHub吸引了开源社区的关注,并成为许多知名开源项目的首选托管平台。GitHub开始主办全球各地的开发者活动,如GitHub Drinkup等,进一步加强了与开发者社区的联系。随后的几个月GitHub相续推出了组织(Organization)功能,使团队能够在一个集中的地方组织和管理项目。团队成员可以加入组织,共享代码仓库并进行协作开发。GitHub对外开放API(api),使开发者能够与GitHub平台进行交互和集成。GitHub Apps是一种基于GitHub API的集成方式,它允许开发者构建和发布自己的应用程序,与GitHub用户和仓库进行集成。GitHub Marketplace是一个集成应用程序的中心,开发者可以在其中找到各种与GitHub集成的工具和服务。

2012年,GitHub的用户数量突破了100万大关,成为全球最大的代码托管平台之一。GitHub还推出了企业版服务,为组织和企业提供私有代码托管解决方案,进一步拓展了其用户群体。与此同时,GitHub推出了“GitHub Enterprise”,这是一个面向企业客户的私有部署版本,允许企业在自己的内部网络上托管和管理代码库。

2014年是GitHub历史上的一个转折点。Tom Preston-Werner辞去首席执行官职务,离开了公司。尽管有这样的离职,GitHub仍然保持了快速发展和吸引力。同时GitHub推出了“GitHub Flow”,这是一种流行的代码开发工作流程,旨在促进团队之间的协作和代码质。

2017年,Chris Wanstrath宣布辞去首席执行官职务。在他离开之前,曾两次担任GitHub首席执行官,起到了重要的领导作用。帮助推动了GitHub的发展,使其成为全球最大的代码托管平台之一。

Nat Friedman于2018年接替Chris Wanstrath成为GitHub的首席执行官。作为一位经验丰富的技术创业者和软件工程师Friedman加入GitHub后继续推动公司的发展。他在开源社区和开发者社区的增长方面发挥了重要作用,并在2018年中期帮助微软完成了对GitHub的收购。

2018年,微软以75亿美元的价格收购了GitHub,但GitHub仍然保持独立运营。微软的支持进一步加强了GitHub的发展,并为其提供了更多资源和技术支持。2019年,GitHub宣布免费用户可以访问私有存储库,这是对之前收费服务的一个重大变化,使更多的开发者能够享受私有存储库的好处。2020年,GitHub在全球范围内有超过4000万名开发者使用其平台,这使其成为最大的代码托管平台之一。2021年,GitHub推出了“Codespaces”,这是一个基于云的集成开发环境,允许开发者在浏览器中编辑、构建和调试代码。2022年,GitHub发布了“GitHub Copilot”,这是一个基于OpenAI 模型的代码自动补全工具,可以根据上下文提供代码片段和建议。

服务业务

GitHub是一个基于Git的代码托管平台,提供了许多服务和功能。GitHub允许用户使用标准的Git命令行界面来访问和管理项目,所有标准的Git命令都可以在其上运行。用户可以浏览网站上的公共代码库,并可以使用多个桌面客户端和Git插件来进行操作。该网站还提供类似社交网络的功能,如动态消息、关注功能、以及社交网络图表,显示开发者们对代码库的不同版本(“分支”)进行的工作情况和最新的分支情况。

任何人都可以浏览和下载公共代码库,但只有注册用户才能对代码库进行贡献。注册用户可以进行讨论、管理代码库、向他人的代码库提交贡献并审查代码的变更。GitHub在2019年1月开始提供有限的免费私有代码库(每个项目限制为三名贡献者)。此前,只有公共代码库是免费的。在2020年4月14日,GitHub宣布将“所有核心功能”对所有人免费开放,包括“无限协作者的私有代码库”。

GitHub的核心软件是Git本身,由Linux创始人Linus 林纳斯·本纳第克特·托瓦兹编写。GitHub的用户界面则是使用Ruby on Rails和Erlang编写的,这些工作是由GitHub公司的开发人员Wanstrath、Hyett和Preston-Werner完成的。

服务范围

GitHub企业版(Enterprise)

GitHub Enterprise 是 GitHub 提供的面向企业和组织的版本,旨在满足企业级的安全性、扩展性和合规性要求。它可以在组织自己的硬件上或云服务提供商上运行,并自2011年11月起可用。GitHub Enterprise 为组织提供了一个私有的、自托管的 GitHub 实例,使他们能够在自己的环境中管理和控制代码。

GitHub页面( Pages)

自2008年以来,GitHub Pages 是 GitHub 提供的一项功能,允许用户轻松地创建和托管静态网站。它是一个免费的服务,可以将 GitHub 仓库中的代码自动转换成网页,并通过一个特定的域名进行访问。

所有GitHub Pages的内容都存储在一个Git仓库中,可以是作为直接提供给访问者的文件,也可以是以markdown格式存储。GitHub与Jekyll静态网站和博客生成器以及GitHub的持续集成流水线进行了集成。每次更新内容源时,Jekyll都会重新生成网站,并通过GitHub Pages基础设施自动提供服务。

代码片段(Gist)

GitHub还运营着一个名为Gist的类似粘贴板的网站,用于存储代码片段,而不是用于大型项目的GitHub本身。Tom Preston-Werner在2008年的一次Ruby会议上首次展示了这个功能。

Gist在传统的简单粘贴板概念的基础上增加了代码片段的版本控制、便捷的分支操作以及私密粘贴的TLS加密功能。由于每个"gist"都是一个独立的Git代码库,可以在单个页面中包含多个代码片段,并且可以使用Git进行推送和拉取。

在2018年3月19日之前,未注册用户可以上传Gists,删除匿名 gist 创建,但此后上传Gists的功能仅限于已登录的用户,据称是为了减少页面上最近Gists的垃圾信息。

Gists的URL使用十六进制ID,对Gists的编辑记录在修订历史中,可以显示每页三十个修订版本的文本差异,提供"分割"和"统一"视图选项。与代码库类似,Gists可以进行分支操作、"标星"(公开收藏)和评论。Gist页面上会显示修订次数、收藏次数和分支次数。

GitHub教育(Education)

GitHub Education 是 GitHub 为教育机构和学生提供的一系列教育资源和工具。它旨在支持学生、教师和学术机构进行软件开发、团队协作和知识共享。

GitHub推出了一个名为GitHub学生开发者包(GitHub Student Developer Pack)的新计划,为年满13岁的学生提供免费访问流行开发工具和服务的机会。GitHub与Bitnami、Crowdflower、digitalocean、DNSimple、HackHands、Namecheap、Orchestrate、Screenhero、SendGrid、Stripe、Travis CI和Unreal Engine等公司合作推出了该计划。

GitHub市场服务(Marketplace)

GitHub Marketplace 是 GitHub 提供的一个在线市场,用户可以在其中找到和购买各种与软件开发和团队协作相关的应用程序和服务。GitHub Marketplace 为开发者提供了一个集中的平台,可以发现、比较和购买他们所需的工具和服务。

GitHub赞助商(Sponsors)

GitHub 赞助商(GitHub Sponsors)是 GitHub 在2019年推出的一项功能,旨在为开发者提供一种获得资金支持的途径,以支持他们的开源项目。然而,在 GitHub 推出赞助商之前,已经存在一些其他方式和平台,开发者可以通过这些方式寻求资金支持。他们可以更直接地与用户和支持者进行连接,并获得可持续的资金支持。通过赞助商,开发者可以在其 GitHub 项目页面上显示赞助按钮,用户可以选择每月定期赞助或一次性捐款来支持项目。赞助者还可以获得一些额外的回报和特权,以感谢他们的支持。促进了开源社区的发展,并为开发者提供了更好的开发环境和机会。同时,这也使开发者能够更专注于项目的开发和维护,而不用过多依赖其他形式的资金来源。

公测于2019年5月23日宣布,该项目接受等待名单注册。据《The Verge》报道,GitHub赞助者(GitHub Sponsors)的运作方式“与Patreon完全相同”,因为“开发者可以提供不同级别的资助,并从支持者那里获得定期支付以获取特权,并鼓励他们的工作”,但“使用该计划不收取任何费用”。GitHub在首个年度为早期采用者提供了激励措施:承诺支付处理费用,并与开发者的赞助支付相匹配,最高达5000美元。此外,用户仍然可以使用其他类似的服务,如Patreon和Open Collective,并链接到他们自己的网站。

GitHub存档计划

在2020年7月,GitHub将该网站的一个二月份的存档,存放在挪威斯瓦尔巴岛上的一个废弃山洞中,该地是北极世界存档的一部分,与斯瓦尔巴全球种子库相距不远。存档包含了所有活跃的公共代码库的代码,以及那些处于休眠状态但具有重要意义的公共代码库。这21TB的数据以piqlFilm存档胶片卷的形式存储,采用了矩阵(2D)条码(盒装条码),预计可以保存500至1,000年。

GitHub存档计划还与合作伙伴共同开展了项目Silica,旨在将所有公共代码库存储至10,000年。该项目旨在使用高精度激光器将存档写入石英玻璃盘的分子结构中,每秒脉冲数达到千万亿(1,000,000,000,000,000)次。

管理团队

母企业

在2018年,微软以75亿美元的价格收购了代码托管平台GitHub。微软收购GitHub后,继续保持了其开放性和独立性,并致力于提供更多的功能和支持,以进一步满足开发者的需求。

微软(Microsoft Corporation)是一家美国跨国科技公司,总部位于华盛顿州雷德蒙德。该公司成立于1975年,由比尔·盖茨(Bill Gates)和保罗·加德纳·阿伦(Paul Allen)共同创办。微软以其操作系统Windows和办公软件套件microsoftoffice而闻名全球,并在计算机软件、硬件和云服务等领域拥有广泛的业务。

创始人

GitHub的创始人是Chris Wanstrath、PJ Hyett和Tom Preston-Werner。Chris Wanstrath在2008年创建了GitHub,并与PJ Hyett和Tom Preston-Werner共同建立了这个知名的代码托管平台。

Tom Preston-Werner是GitHub的创始团队之一,他在GitHub的早期阶段起到了重要的角色。他是GitHub的首席执行官(CEO)之一,负责公司的战略规划和发展。他还是开源社区中的重要人物,致力于促进开源软件的发展和推广。

然而,汤姆·普雷斯顿·沃纳在2014年离开了GitHub,不再是该公司的一员。他离开后,GitHub的领导团队由其他人接管,并在微软收购GitHub后发生了一些变化。

首席执行官

争议事件

GitHub员工被骚扰事件

2014年3月,GitHub的程序员朱莉·安·霍夫斯(Julie Ann Horvath)声称公司创始人兼CEO汤姆·普雷斯顿-韦纳(Tom Preston-Werner)和他的妻子特丽莎(Theresa)对她进行了骚扰,导致她离开了该公司。 2014年4月,GitHub发布了一份声明,否认霍夫斯的指控。 然而,在内部调查之后,GitHub确认了这些指控。GitHub的CEO克里斯·旺斯特拉思(Chris Wanstrath)在公司博客上写道:“调查发现,汤姆·普雷斯顿-韦纳作为GitHub的CEO在工作中表现不当,包括具有挑衅性的行为,对工作场所投诉的忽视,对他的配偶在工作场所存在的影响不敏感,以及未能执行不让他的配偶在办公室工作的协议。” 汤姆·普雷斯顿-韦纳随后辞去了公司职务。 公司随后宣布将实施新的倡议和培训,“确保员工的关切和冲突得到认真对待和妥善处理。”

ICE合同风波

GitHub与美国移民和海关执法局(ICE)签订了一项价值20万美元的合同,用于使用他们的产品GitHub Enterprise Server。尽管许多GitHub员工内部反对,但该合同在2019年得到续签。后来于2019年10月9日发布在GitHub博客上,CEO纳特·弗里德曼(Nat Friedman)表示:“购买所得收入不到20万美元,对我们公司来说并不具备财务重要性。”他宣布GitHub已承诺向“支持当前政府打压的移民社区的非营利组织”捐赠50万美元。作为回应,至少150名GitHub员工签署了一封公开信,重申他们反对该合同,并谴责ICE的涉嫌人权侵犯行为。截至2019年11月13日,已有五名员工因为合同问题而辞职。

由于2020年公司决定放弃 "master/slave" branch terminology(非对称通信或控制的模型),ICE合同争议再次引起关注(受到乔治·弗洛伊德抗议和黑人生命重要性运动的推动)。 GitHub的批评者将分支重命名视为一种表演性行动,并敦促GitHub取消与ICE的合同。 2019年12月,开源社区的成员在GitHub上发布了一封公开信,要求该公司终止与ICE的合同,并提供更多关于他们业务和合作伙伴关系运作方式的透明度。该公开信已有700多人签署。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}
友情链接: