Skip to content
标签

什么是GitHub?从A到Z的完整使用指南

Featured image of post 什么是GitHub?从A到Z的完整使用指南

了解什么是GitHub,如何创建账户、创建仓库、克隆、提交、推送和拉取请求。面向初学者的GitHub从A到Z完整使用指南。

GitHub是世界上最受欢迎的源代码托管和版本控制平台,归微软所有。本文详细介绍了如何创建账户、仓库、克隆、提交、推送、拉取请求以及GitHub的突出功能。

什么是GitHub?

什么是GitHub?GitHub是一个独特的开发者社交网络,既是项目管理系统,也是源代码仓库。GitHub允许您高效地跟踪、协作和管理软件项目。它是最受欢迎的Git源代码托管服务,开发者可以从仓库克隆代码并创建自己的代码库。

除了Git的核心功能外,GitHub还添加了社交互动元素,如动态消息、关注者和网络图谱,使开发者能够轻松地通过提交历史相互连接和学习。

GitHub提供两个版本:免费版和付费版。付费版通常面向企业,提供权限管理和安全功能,支持高效的团队管理。免费版则是个人存储源代码和参与开源社区的热门选择。

GitHub的一个独特之处是提交消息(commit message)——对源代码执行操作的描述——帮助团队理解项目中的变更。开源社区因GitHub而蓬勃发展,对许多开发者来说,GitHub被视为"第二份简历"。雇主经常查看GitHub个人资料来评估候选人的编程技能。

如今,掌握Git并了解什么是GitHub不仅是一种优势,更是编程行业求职者的重要要求。

GitHub的发展历史

GitHub是开源社区卓越发展的见证,为科技行业的工作方式和协作方式带来了变革。以下是GitHub发展历程中的重要里程碑。

  • 2008年: GitHub由Tom Preston-Werner、Chris Wanstrath和PJ Hyett创立,旨在创建一个强大且易于使用的源代码管理平台。产品在TechCrunch Disrupt上正式亮相,迅速吸引了社区的关注。
  • 2009年: GitHub开始吸引开源开发者。Ruby on Rails、jQuery和Node.js等大型项目选择GitHub作为其源代码管理平台。
  • 2010年: GitHub成功完成首轮融资,从Sequoia Capital获得750万美元投资,帮助平台快速发展和扩张。
  • 2011年: GitHub上的仓库数量突破100万,使其成为开源项目的核心枢纽。
  • 2012年: GitHub推出GitHub Enterprise——专为企业设计的服务,允许组织建立自己的服务器来管理源代码。
  • 2018年: 微软以75亿美元收购GitHub,推动更大的发展并将GitHub整合到微软生态系统中。
  • 2019年: GitHub用户突破4000万,成为开源社区和科技行业不可或缺的一部分。
  • 2020年: GitHub推出GitHub Codespaces,允许开发者直接在浏览器中编写代码,无需在个人电脑上设置开发环境。

经过这些发展阶段,GitHub已证明了其在支持和连接全球开发者社区方面的影响力。

GitHub的主要功能

GitHub的突出功能是什么?GitHub是项目管理和开源版本控制的领先平台,拥有许多强力支持软件开发和项目管理的突出功能。

  • 版本控制系统(VCS): GitHub使用Git进行版本控制,帮助跟踪变更和管理项目的不同版本。
  • 仓库(Repository): GitHub提供仓库来存储源代码。每个项目可以有自己的仓库,用户可以通过复刻(fork)来为项目做贡献。
  • 拉取请求(Pull Requests): 此功能允许贡献者向原始仓库提出变更建议,为合并到主仓库之前的讨论和代码审查创造空间。
  • 分支(Branching): 支持创建独立的分支,同时开发多个功能而互不影响。
  • 提交历史(Commit History): 保存提交历史,包含关于谁进行了更改、何时更改以及更改了什么内容的详细信息。
  • 问题追踪(Issues): 跟踪任务、错误、分配和改进的工具。问题可以分配给团队成员并跟踪进度。
  • 项目管理(Projects): 任务管理功能,帮助灵活地跟踪进度和组织工作。
  • Wiki和Pages: 允许创建Wiki页面来分享信息和文档,以及通过GitHub Pages从仓库创建静态网站。
  • 协作(Collaboration): 支持讨论、评论和权限功能,帮助项目成员有效协调。
  • 集成(Integrations): 与CI/CD、代码检查工具和自动化测试服务等多种工具集成。
  • 安全功能(Security Features): 提供代码扫描工具、漏洞检测以及监控可能存在风险的依赖项。
  • 社区(Community): GitHub是连接全球数百万开发者的大型社区枢纽,创造学习、分享和贡献的机会。

如何在Android上快速设置WiFi代理

凭借这些功能,GitHub已成为开源开发社区和大规模软件项目的理想平台。

GitHub的账户类型

GitHub上有哪些账户类型?GitHub提供多种账户类型,以满足个人和组织的多样化需求。以下是一些常见的账户类型:

  • 个人账户(Individual Account): 面向个人的免费账户,允许创建公开仓库并参与开源项目。这是开发者社区中的热门选择。
  • 组织账户(Organization Account): 面向组织、企业或大型项目,允许在共享的组织空间中管理项目和成员。提供免费版和具有高级功能的付费计划。
  • 开发者账户(Developer Account): 个人账户的付费版本,提供与外部开发工具集成和优先支持等额外功能。
  • 团队账户(Team Account): 面向组织的付费计划,允许创建多个工作组和基于团队的项目管理。
  • 企业账户(Enterprise Account): 面向大型组织,提供增强的安全性和企业服务集成等高级功能。该计划根据用户数量定价。
  • GitHub Free和GitHub Pro: 这是个人账户的两个选项,其中GitHub Free是免费版本,GitHub Pro是付费版本,具有开发工具集成和优先支持等高级功能。
  • GitHub Education: 面向学生和教育工作者的免费支持计划,提供强大的教学和学习功能。

凭借多样化的账户类型,GitHub已为从个人到大型企业的各类用户提供了便利。

你需要了解的基本Git概念

使用Git时,理解以下基本概念将帮助您充分利用Git的功能:

  • 仓库(Repository/Repo): 包含源代码和项目完整变更历史的目录或存储空间。
  • 提交(Commit): 记录源代码在特定时间点状态的"快照"。每次提交都有唯一的哈希码。
  • 分支(Branch): 分支是项目的并行版本,允许独立开发功能而互不影响。
  • 合并(Merge): 将一个分支的变更合并到另一个分支的过程。
  • 拉取请求(Pull Request/PR): 将一个分支的变更合并到另一个分支的请求。PR通常用于有多个贡献者的项目中。
  • 克隆(Clone): 将远程仓库复制到本地计算机进行本地工作。
  • 获取(Fetch): 下载远程变更但不合并到当前分支。
  • 拉取(Pull): 类似于获取,但会自动将远程变更合并到当前分支。
  • 推送(Push): 将本地提交上传到远程仓库。
  • 冲突(Conflict): 当两个分支或多人修改了源代码的同一部分时发生冲突。
  • 暂存区/索引(Staging Area/Index): 提交前临时存储变更的区域。
  • 工作目录(Working Directory): 您在本地机器上进行工作和编辑源代码的目录。
  • HEAD: 指向当前分支中最后一次提交的指针。
  • 标签(Tag): 标记特定提交以便于搜索和引用。
  • 远程(Remote): 位于远程位置的仓库,通常在网络上。

理解这些与GitHub相关的概念将帮助您更高效地使用Git。

使用GitHub的好处

使用GitHub有什么好处?使用GitHub为开发者带来了许多优势,从高效的源代码管理到编程技能的提升。以下是一些突出的好处:

高效的源代码管理

当您创建一个仓库(repo)时,项目的整个源代码都存储在GitHub上。在这里,您可以通过每次提交后的评论跟踪工作过程,特别是多人可以同时在同一个仓库上工作。

GitHub带来了许多好处,首先是能够知道谁进行了提交以及提交的内容。此外,您可以通过多个分支开发项目。使用分支的原则如下:您可以创建多个分支来开发新功能,但最终所有分支需要合并回MASTER分支,以创建项目的完整版本。

通过版本控制跟踪变更

当多个团队成员参与一个项目时,跟踪编辑——谁改了什么、什么时候改的以及文件存储在哪里——可能变得复杂。别担心,GitHub通过记录您推送到仓库的每一个变更为您解决了这个问题。类似于Microsoft Word或Google Drive,GitHub提供版本历史,让您可以在出现问题或当前版本不理想时轻松恢复到之前的版本。

什么是淘宝代理

使用Markdown创建文档

Markdown是一种在网页上格式化文本的方法,允许您调整文档的显示方式,如加粗、斜体格式、添加图片和创建列表。大部分情况下,Markdown只是插入了一些特殊字符的纯文本,例如#或*。在GitHub上,您可以在许多地方使用Markdown,包括Git、Issues和Pull Requests中的评论,以及.md或.markdown扩展名的文件。

通过GitHub项目展示个人价值

不可否认,简历中写的内容很重要。然而,源代码始终是证明您是真正开发者的最好证据。简历中的GitHub部分可以帮助您从其他候选人中脱颖而出。对于雇主来说,GitHub就像一个打假探测器——帮助区分真正的开发者和"冒牌货"。

投资打造一个令人印象深刻的GitHub账户并将链接添加到您的简历中;没有雇主会忽视您的。

全球许多大公司将拥有GitHub账户视为招聘过程中的要求。如果您对社区有很多贡献或在GitHub上拥有多个产品,这将是您相对于其他候选人的巨大优势。通过在这里发布您的项目,您已经为自己建立了一个可信的个人档案。

雇主在查看您的GitHub个人资料时会很快认识到您的优势和编程能力。

提升编程技能和错误追踪

学习的方式有千百种,在GitHub上学习是当今时代的绝佳选择。有数百万个开源项目、数十万贡献者和每天数十亿次提交,观察、比较和学习这些变更将为您提供宝贵的知识来提升编程技能。

GitHub集成了"错误追踪"功能,简化了查找和修复错误的流程。要了解这个流程,您只需打开每个项目的仪表板并按需过滤信息。系统将按热度、更新时间和相关信息排序问题。软件界面也非常流畅,因此它在IT开发者社区中一直受到高度评价。

探索GitHub上丰富的资源

通过Explore功能,您可以轻松关注和搜索基于您喜爱技术的开源项目。GitHub不仅支持搜索单个项目的代码,还支持搜索整个网站。此外,该平台还具有良好的搜索引擎优化(SEO),允许用户搜索任何公开共享的代码字符串。

使用GitHub Actions自动化工作流程

在GitHub的服务器上,有自动运行的工作流脚本。开发者可以使用它们来响应仓库上的事件或执行特定操作。例如,我编写了一个名为Autotagger的小工具——GitHub Marketplace,当package.json文件中的版本号更改时,它会自动创建git标签。虽然这只是一个小操作,但当需要追溯到以前发布版本的源代码时,它可以产生巨大的影响,减轻项目维护者的一些"头疼"。

通过GitHub Package Registry管理和分发软件包

GitHub Package Registry允许开发者维护他们的分发注册表,包括npm、Docker、Maven、NuGet和Ruby gems。

不要犹豫,立即创建一个GitHub账户。开始您自己的项目并与社区分享,或者随意复刻一个开源项目。如果发现错误或需要帮助,请创建拉取请求或问题来报告。

在开发者社区中建立和拓展关系

结识新开发者:全球数千名开发者正在加入GitHub的广大网络,分享经验和创意想法。

分享个人经验:Git允许用户与其他开发者分享源代码、文本片段或任何信息。您可以使用它来交换信息,或将Gists用作Git仓库,从中复刻和更新不同版本。

GitHub的用途

GitHub是一个极其多功能的工具,支持编程和软件开发领域的许多活动。以下是GitHub的一些典型用途。

拖放和存储源代码

GitHub允许您直接将源代码文件拖放到仓库中,使上传变得快速简便。您可以在这里存储项目的所有源代码,从小文件到大型库。

通过Web界面创建和管理文件夹

GitHub的Web界面使您可以轻松地在仓库中创建和管理文件夹。这意味着您可以科学地组织源代码,并轻松找到所需的文档。

使用Git URL Shortener缩短URL

使用GitHub缩短URL

GitHub还提供URL缩短工具,使分享仓库和文件的链接更加方便。当您想向同事或朋友发送链接时,这非常有用。

在哪里购买便宜可靠的越南IPv4代理?

搜索文件和文档

GitHub提供强大的搜索功能,允许您在自己的仓库或整个平台上搜索文件和文档。您可以轻松按名称、类型或内容搜索文件。

在项目中使用GitHub表情符号

GitHub上一个有趣的功能是在评论、提交和Pull Request中集成表情符号。这不仅使沟通更加生动,还有助于在技术讨论中表达情感。

通过GitHub CLI管理项目

GitHub CLI允许您直接从终端管理项目。您可以执行创建问题、拉取请求或管理分支等操作,而无需打开浏览器,节省时间并提高工作效率。

在代码行之间创建链接

GitHub允许您在仓库中不同的代码行之间创建链接。这帮助用户轻松跟踪变更和代码段之间的关系,从而提高对源代码结构的理解。

使用任务清单

任务清单是帮助您管理和跟踪项目工作进度的有用工具。您可以为每个任务创建清单,确保所有工作按时完成。

使用Maps、CSV和3D Rendering格式化数据

GitHub支持以地图、CSV和3D渲染格式呈现数据,允许您以直观易懂的方式轻松共享和展示项目数据。

探索GitHub的Octodex

Octodex是GitHub可爱头像图片的合集,帮助用户在加入社区时感到更加轻松。这为用户创造了一个有趣友好的氛围,同时鼓励他们更积极地参与。

GitHub从A到Z的详细使用指南

要有效使用GitHub,您需要掌握工作流程中的基本步骤。以下是从A到Z的详细指南,帮助您入门。

步骤1:创建GitHub账户

访问github.com网站,使用电子邮件、Google账户或Facebook创建账户。注册成功后,您将收到一封确认电子邮件。点击邮件中的链接激活您的账户。

步骤2:创建仓库(Repository)

登录后,点击屏幕右上角的"New"按钮。输入仓库名称(Repository name)、描述(Description),并选择仓库类型(Public或Private)。最后,点击"Create repository"按钮。

步骤3:将GitHub连接到您的电脑

GitHub使用Git进行版本控制。在连接仓库之前,您需要在电脑上安装Git。从官方网站下载并安装Git:git-scm.com。

打开终端或命令提示符,运行以下命令来配置Git:

git config --global user.name "您的名字"

git config --global user.email "您的邮箱"

步骤4:将仓库克隆到电脑

从GitHub网站复制仓库的URL地址。打开终端并导航到您想要存储仓库的目录。运行以下命令将仓库克隆到电脑:

git clone

步骤5:添加源代码文件并提交

将源代码文件添加到仓库目录中。使用以下命令将文件添加到Git的跟踪区域:

git add .

使用以下命令提交更改:

git commit -m "描述更改的消息"

步骤6:将更改推送到GitHub

使用以下命令将更改推送到GitHub上的仓库:

git push origin main

步骤7:创建Pull Request

如果您想提交代码供他人审查和合并,可以创建Pull Request。为您要实现的功能或错误修复创建一个新分支。提交更改并推送到新分支。

访问仓库的GitHub页面,点击"New pull request"按钮。选择要合并的分支,写一个关于更改的简短描述。点击"Create pull request"按钮。

GitHub的竞争对手

当然,GitHub并不是唯一提供开发者之间源代码共享服务的平台。如今,许多其他公司也提供类似的服务,包括:

  • Bitbucket
  • Google Cloud Source Repositories
  • Phabricator
  • GitLab
  • Gogs
  • Gitea
  • SourceForge
  • Apache Allura
  • Launchpad
  • AWS CodeCommit

希望通过这篇文章,您对GitHub、其功能和定价有了更好的了解。如果您有任何问题,请在下方留言!

GitLab以其强大的集成CI/CD功能和自托管能力而闻名。它提供全面的项目管理工具并支持高效的团队合作。

{{< test-result title="源代码托管平台对比" headers="标准|GitHub|GitLab|Bitbucket|SourceForge" row1="所有权|Microsoft|GitLab Inc.|Atlassian|Slashdot Media" row2="集成CI/CD|GitHub Actions|GitLab CI/CD|Bitbucket Pipelines|无" row3="自托管|Enterprise|Community Edition|Data Center|无" row4="免费仓库|无限|无限|5名成员|无限" row5="Wiki和Pages|有|有|有|有" row6="社区|最大|大|中等|中等" />}}

提示
GitHub凭借最大的社区是开源项目的最佳选择。GitLab适合需要强大CI/CD和免费自托管的场景。如果您使用Atlassian生态系统,Bitbucket与Jira集成良好。

总结: GitHub是世界上最受欢迎的源代码管理和软件协作平台,拥有超过1亿用户。从仓库托管、Pull Request、GitHub Actions到GitHub Pages,该平台为个人开发者和企业提供了全面的工具。

来源与参考文献
1. [GitHub Official — github.com](https://github.com/) 2. [GitHub Documentation — docs.github.com](https://docs.github.com/) 3. [Git Documentation — git-scm.com](https://git-scm.com/doc) 4. [GitHub — Wikipedia](https://en.wikipedia.org/wiki/GitHub) 5. [GitHub Actions Documentation — docs.github.com](https://docs.github.com/en/actions)

常见问题

什么是GitHub?
GitHub是一个使用Git的源代码托管和版本控制平台,归微软所有。GitHub允许开发者存储、共享代码、在项目中协作以及为开源社区做贡献。
GitHub是免费的吗?
是的,GitHub Free允许创建无限的公开和私有仓库,支持每月2000分钟的GitHub Actions。Pro、Team和Enterprise计划提供额外的高级功能,需按月付费。
GitHub和Git有什么区别?
Git是运行在本地机器上的分布式版本控制系统。GitHub是在云端托管Git仓库的网络平台,添加了Pull Request、Issues、Actions和Pages等协作功能。
GitHub上的Pull Request是什么?
Pull Request(PR)是将更改从一个分支合并到另一个分支的请求。PR允许团队成员在合并到主分支之前审查代码、讨论和建议修改。
GitHub Actions有什么用?
GitHub Actions是内置的CI/CD工具,允许直接从仓库自动化构建、测试和部署工作流程。Actions运行在GitHub的服务器上,由推送、PR等事件触发。

article.share