GitHub是什么?(聚焦实用功能)

很多人初次接触GitHub时,可能会好奇它到底是个什么“东西”。简单来说,GitHub是一个基于Git版本控制系统的
在线代码托管平台。但它不仅仅是存放代码的地方,更是一个强大的
开发者协作社区

具体来说,GitHub提供了以下核心功能:

  • 代码仓库(Repository):这是你在GitHub上存储项目代码的地方。一个仓库通常包含一个项目的
    所有文件、文档以及版本历史。你可以创建自己的仓库,也可以参与别人的开源仓库。
  • 版本控制(Version Control):通过Git,GitHub让你能够跟踪代码的每一次修改,知道谁在何时
    做了什么改动,并且可以在不同版本之间轻松切换或回溯。这是团队协作和个人项目管理的基础。
  • 分支管理(Branching):你可以在主代码线上创建“分支”,在分支上进行新功能的开发或bug修复,
    而不会影响到主线的稳定性。完成后再将分支合并回主线。
  • 协作与社交:GitHub提供了强大的协作工具,如:
    • Pull Request (PR):用于发起代码合并请求。你可以对他人的代码改动进行审查、讨论,
      提出建议,最后决定是否合并到主线。这是团队协作和开源贡献的核心流程。
    • Issue Tracking:用于记录项目的bug、功能请求、任务分配等。团队成员可以在这里
      讨论问题、指派负责人并追踪进度。
    • Forking:如果你想为别人的项目做贡献,但没有直接写入权限,可以“Fork”该项目,
      创建一个完全属于你的副本。在你的副本上修改后,再通过Pull Request提交给原项目。

总之,GitHub是一个集代码托管、版本控制、协同开发和社区交流于一体的综合平台。

为什么要使用GitHub?(实用价值导向)

使用GitHub的理由很多,主要集中在提升开发效率、代码安全性和协作体验上:

  • 高效的版本控制:告别手动备份和混乱的文件名(比如:代码最终版.zip, 代码最终版修改.zip)。
    Git和GitHub能帮你科学地管理每一次改动,轻松回退到任意历史版本。
  • 便捷的团队协作:无论团队成员身在何处,都可以通过GitHub共同开发一个项目。Pull Request
    流程使得代码审查变得规范化,能有效提高代码质量。
  • 代码安全有保障:你的代码存储在云端,即使本地电脑出现问题,代码也不会丢失。
  • 展示个人技能:许多公司在招聘时会查看开发者的GitHub主页,将其作为评估技术能力和项目经验
    的重要参考。积极参与开源项目或维护自己的高质量项目,能为你赢得机会。
  • 接触和学习开源项目:GitHub是全球最大的开源软件社区。你可以在这里找到无数优秀的项目代码,
    学习他们的实现方式,也可以贡献自己的力量。
  • 自动化流程(如Actions):虽然Actions属于进阶功能,但它体现了GitHub的自动化能力,可以实现
    代码提交后的自动测试、部署等。

简而言之,使用GitHub能让你的代码管理更专业、协作更顺畅、学习资源更丰富,并且有机会构建自己的技术影响力。

GitHub在哪里访问和使用?

使用GitHub主要通过以下几种方式:

  • GitHub官方网站:这是最直观的方式,你可以在浏览器中访问 https://github.com
    进行注册、创建仓库、管理设置、发起Pull Request、处理Issue等。
  • Git命令行工具(CLI):这是开发者最常用的方式。通过在终端或命令行界面输入Git命令
    (如git clone, git add, git commit, git push, git pull等),
    你可以与GitHub上的仓库进行交互,实现本地代码与远程仓库的同步。
  • GitHub Desktop:GitHub官方提供的桌面客户端,为不习惯命令行操作的用户提供了图形化界面,
    可以更方便地进行克隆、提交、推送、拉取、分支管理等操作。
  • 集成开发环境(IDE):许多主流的IDE(如VS Code, IntelliJ IDEA, Eclipse等)都内置或
    提供了Git/GitHub集成插件,让你可以在IDE内部完成大部分Git操作。

对于初学者,建议从网站和Git命令行工具入手,这是理解GitHub工作原理和掌握基础操作最根本的方式。

使用GitHub需要多少费用?

对于绝大多数个人开发者和小型团队的日常使用,GitHub提供了非常慷慨的免费方案。

  • GitHub Free (免费版)

    • 无限量的公共仓库和私有仓库:你可以免费创建任意数量的公共和私有代码仓库。
      私有仓库对于存放个人项目、学习代码或非开源的商业项目非常有用。

    • 不限制协作者数量:无论公共仓库还是私有仓库,都可以邀请任意数量的协作者一起工作。

    • 包含核心功能:Issue Tracking, Pull Requests, Projects (看板功能), Wiki 等。

    • 提供一定量的免费GitHub Actions分钟数(用于自动化任务)和GitHub Packages存储空间。

付费的GitHub Pro、Team、Enterprise方案主要针对需要更多高级功能、更大量自动化资源、或更严格企业级管理
需求的个人或组织。作为入门学习和个人项目使用,免费版GitHub的功能已经足够强大

如何/怎么开始使用GitHub?(详细步骤)

这部分将详细介绍如何从零开始,完成GitHub的注册、安装Git,并进行基本的代码上传和管理操作。

第一步:注册GitHub账号

  1. 打开浏览器,访问 https://github.com/join

  2. 输入你的用户名邮箱地址密码
    用户名是你在GitHub上的身份标识,是公开的。

  3. 根据提示完成验证(通常是选择图片等)。

  4. 选择你的偏好设置(如对什么话题感兴趣等),这些可以跳过或稍后设置。

  5. 重要:验证你的邮箱地址。GitHub会发送一封验证邮件到你注册时使用的邮箱,点击邮件中的链接完成验证。
    只有验证了邮箱,才能正常使用GitHub的全部功能。

至此,你的GitHub账号就注册成功了。

第二步:安装Git

GitHub是基于Git的,你需要在本地电脑上安装Git命令行工具才能方便地与GitHub仓库交互。
访问 https://git-scm.com/downloads 下载对应操作系统的安装包并安装。
安装完成后,打开命令行终端(Windows用户可以使用Git Bash,Mac/Linux用户使用自带终端),输入以下命令验证:

git –version

如果显示Git的版本号,说明安装成功。

接下来进行基础配置,设置你的用户名和邮箱,这会在你提交代码时记录是谁提交的:

git config –global user.name “你的GitHub用户名”
git config –global user.email “你的GitHub注册邮箱”

将双引号中的内容替换为你自己的信息。

第三步:创建一个新的仓库(Repository)

我们将创建一个新的仓库来存放你的项目代码。

  1. 登录GitHub网站,点击页面右上角的“+”号,选择“New repository”(新建仓库)。

    创建新仓库按钮示例

  2. 进入创建页面:

    • Owner(所有者):默认为你的用户名。
    • Repository name(仓库名):给你的仓库起一个名字,建议使用项目名称,简短有意义,例如 my-first-projecthello-world。仓库名是唯一的。
    • Description (可选):简要描述你的仓库是做什么的。
    • Public or Private(公开或私有)
      • Public:任何人都可以看到这个仓库的代码和文件,适合开源项目。
      • Private:只有你和邀请的协作者能看到,适合个人项目或商业项目。

      免费用户可以创建无限量公共和私有仓库。

    • Initialize this repository with::建议勾选以下选项:
      • Add a README file:README文件是项目的说明文档,介绍项目是什么、如何使用、如何安装等。
        勾选后GitHub会自动为你创建一个包含仓库名的README.md文件,这是个好习惯。

      • Add .gitignore:.gitignore文件用于指定哪些文件或文件夹不需要被Git跟踪和上传(比如编译生成的文件、本地配置文件等)。
        可以根据你的项目类型选择一个模板(如Node, Python等)。

      • Choose a license:选择一个开源许可证(如果你的项目是开源的)。
        如果不是开源项目或不确定,可以暂时不选。

  3. 点击绿色的“Create repository”按钮。

仓库创建成功后,你会看到仓库的主页,其中包含了你刚才选择生成的README文件等。

第四步:将GitHub仓库克隆到本地

现在你想在本地电脑上修改或添加文件到这个仓库。需要先把它“克隆”下来。

  1. 在你的GitHub仓库主页,找到绿色的“Code”按钮,点击它。

  2. 在弹出的菜单中,选择“HTTPS”或“SSH”选项。对于初学者,使用HTTPS通常更简单(可能每次操作需要输入GitHub账号密码或使用缓存凭证)。
    复制显示的仓库地址,例如:https://github.com/你的用户名/你的仓库名.git

    Code按钮和克隆地址示例

  3. 打开你电脑上的命令行终端。

  4. 切换到一个你希望存放项目的文件夹。

  5. 运行git clone命令,后面粘贴你刚才复制的仓库地址:

    git clone https://github.com/你的用户名/你的仓库名.git

  6. 命令执行后,Git会在当前目录下创建一个与你仓库同名的文件夹,并将仓库中的所有文件(如README.md)下载到这个文件夹里。

你就成功将远程GitHub仓库克隆到了本地。

第五步:在本地修改代码并提交到GitHub

现在我们来模拟修改代码,并将改动同步到GitHub。

  1. 进入刚才克隆下来的仓库文件夹:

    cd 你的仓库名

  2. 使用你喜欢的代码编辑器,对文件夹内的文件进行修改,或者新建文件。
    例如,修改README.md文件,或者新建一个hello.txt文件,里面写上“Hello, GitHub!”。

  3. 回到命令行终端,使用git status命令查看当前仓库的状态。它会告诉你哪些文件被修改了,哪些是新增的。

    git status

  4. 使用git add命令将你修改或新增的文件添加到Git的“暂存区”(Staging Area)。这是提交前的准备步骤。

    git add .

    这里的.表示添加当前目录下所有发生改动的文件。你也可以指定具体文件名,例如 git add README.md hello.txt

  5. 再次运行git status,你会看到这些文件已经被添加到暂存区,等待提交。

  6. 使用git commit命令将暂存区的文件正式提交到本地仓库的历史记录中。每次提交都需要附带一个简短的说明信息,描述这次提交做了什么。

    git commit -m “添加了 hello.txt 并更新了 README”

    -m 后面的双引号内就是提交信息(Commit Message)。写好提交信息是一个好习惯。

  7. 现在改动已经保存在了你的本地Git仓库里,但还没有同步到GitHub上。使用git push命令将本地提交推送到远程GitHub仓库。

    git push origin main

    这里的origin是远程仓库的别名(克隆时Git自动设置的,指向你的GitHub仓库),main是你要推送到的分支名称(通常是主分支,旧版本Git默认为master)。
    如果GitHub仓库的主分支是master,命令就是 git push origin master。请根据你的仓库实际情况确认。

  8. 执行git push时,你可能会被要求输入GitHub的用户名和密码,或者使用个人访问令牌(Personal Access Token – PAT)。
    (注意:GitHub已不再支持直接使用密码通过HTTPS进行Git操作,推荐使用PAT或SSH Key进行认证)。

推送成功后,刷新你的GitHub仓库页面,你会看到刚才的修改和新增文件已经出现在上面了。

第六步:从GitHub拉取最新代码

如果你的团队成员或其他协作者在GitHub仓库上做了改动,你需要将这些改动同步到本地。

  1. 在命令行终端,确保你在你的本地仓库文件夹内。

  2. 运行git pull命令:

    git pull origin main

    (同样,根据你的主分支名称调整mainmaster)。

  3. Git会自动下载远程仓库的最新改动,并尝试与你的本地代码合并。如果本地没有未提交的改动,或者改动不冲突,合并会自动完成。

这样,你的本地仓库就与GitHub上的最新状态同步了。

第七步:了解分支(Branching)和拉取请求(Pull Request)的基础

分支和PR是GitHub上进行协作和管理复杂项目的核心。

分支 (Branch)

当你需要开发一个新功能或修复一个Bug时,不应该直接在主分支(如mainmaster)上进行。你应该创建一个新的分支。

  • 在本地创建并切换到新分支:

    git checkout -b feature/new-feature

    这条命令创建了一个名为feature/new-feature的新分支,并立即切换到这个分支。现在你的所有修改都只发生在这个分支上。

  • 在新分支上进行修改、add、commit,然后推送到GitHub:

    git add .
    git commit -m “完成新功能A”
    git push origin feature/new-feature

    注意push命令后面是你新分支的名称。第一次推送新分支时,Git可能会提示你设置上游分支,按照提示输入相应的命令即可。

在GitHub网站上,你会看到这个新分支已经被创建了。

拉取请求 (Pull Request – PR)

当你在新分支上的开发完成后,需要将其合并回主分支(比如main)。这时就发起一个Pull Request。

  1. 在GitHub网站上发起PR:

    在你推送到新分支后,GitHub通常会在你的仓库页面顶部显示一个提示,让你方便地发起Pull Request。
    如果没有,你可以到“Pull requests”标签页,点击“New pull request”按钮。

    选择比较的分支:通常是“base”(基础分支,例如main)和“compare”(比较分支,你的新分支,例如feature/new-feature)。
    选择base和compare分支示例

  2. 填写PR信息:

    给你的Pull Request写一个标题和详细描述,说明你做了哪些改动,解决了什么问题,或者添加了什么功能。
    你还可以关联Issue、@其他团队成员进行审查、添加标签等。

  3. 提交PR:

    点击“Create pull request”按钮。

PR创建后,团队成员可以查看你提交的代码改动(“Files changed”标签页),在代码行上进行评论,提出问题或建议。
PR文件改动视图示例

当所有讨论和审查完成后,如果代码没有冲突并通过了检查(如自动化测试),拥有合并权限的人就可以点击绿色的“Merge pull request”按钮,将你的新分支合并到主分支中。
合并完成后,通常可以删除不再需要的功能分支。

第八步:使用Issue追踪问题

Issue是GitHub上用来追踪任务、bug、功能请求和项目讨论的地方。

  1. 在你的仓库主页,点击“Issues”标签页。

  2. 点击“New issue”按钮。

  3. 给Issue写一个清晰的标题和详细的描述。你可以使用Markdown格式,上传图片,@其他用户等。

  4. 你可以在右侧为Issue指定负责人(Assignees)、标签(Labels)、项目(Projects,用于看板管理)、里程碑(Milestones)等。

  5. 点击“Submit new issue”创建。

团队成员可以在Issue下方留言讨论。解决某个Issue的代码改动通常会在Pull Request中通过关联(在提交信息或PR描述中提及Issue编号,如Fixes #123)来体现。

总结

GitHub是现代软件开发不可或缺的工具。通过掌握它的基础功能,你不仅能够更有效地管理自己的代码,更能融入全球开发者社区,参与到大大小小的项目中。
本教程介绍了GitHub的“是什么”、“为什么”、“在哪里”、“多少钱”以及“如何开始使用”的核心步骤,包括账号注册、Git安装、仓库创建、代码同步(克隆、添加、提交、推送、拉取)、分支与PR的基础概念和流程,以及Issue的使用。
这只是GitHub强大功能的冰山一角,但掌握了这些基础,你就已经迈出了坚实的第一步。最好的学习方式是实践,现在就开始创建你的第一个GitHub仓库,或者克隆一个感兴趣的开源项目,尝试提交你的第一行代码吧!


github使用教程