本文档详细讲解 GitHub 所有功能、按钮的用途和作用,适合零基础新手入门
文章内容若有错误的地方,请留言,后续及时改正
文档版本:2026年7月
适用对象:GitHub 零基础新手
📑 目录
GitHub 是什么
注册账号
首页(Home)所有按钮说明
顶部导航栏(Global Navigation)
仓库页面(Repository)所有功能按钮
Issues(问题追踪)完整功能
Pull Request(PR)完整功能
Actions(自动化CI/CD)
Projects(项目管理)
Wiki(文档百科)
Security(安全功能)
Insights(数据洞察)
Settings(设置)所有选项详解
个人主页(Profile)
组织(Organization)
GitHub Marketplace
GitHub Codespaces
GitHub Copilot
GitHub Discussions
GitHub Sponsors
GitHub API
GitHub CLI(命令行工具)
GitHub Pages(静态网站)
GitHub Packages(包管理)
Git 基础操作命令
新手常见问题
1. GitHub 是什么
GitHub 是全球最大的代码托管平台和协作开发平台。
核心作用:
-
📦 代码托管:保存你的代码,支持版本管理
-
👥 协作开发:多人同时开发同一个项目
-
🔄 版本控制:记录每次修改,随时回退
-
🤝 开源社区:学习和参与全球开源项目
-
🚀 自动化部署:自动测试和发布代码
GitHub 的核心概念:
| Repository(仓库) | 项目的代码存储空间 | 一个文件夹 |
| Commit(提交) | 一次代码修改的记录 | 一次保存 |
| Branch(分支) | 独立的开发线 | 副本 |
| Pull Request(PR) | 请求合并代码修改 | 申请合并 |
| Issue(问题) | 任务、Bug、讨论 | 便签 |
| Fork(复刻) | 复制他人仓库到自己账号 | 抄作业 |
| Clone(克隆) | 下载远程仓库到本地 | 下载 |
| Push(推送) | 上传本地修改到远程 | 上传 |
| Pull(拉取) | 下载远程最新修改 | 同步 |
2. 注册账号
2.1 注册步骤
打开 GitHub · Change is constant. GitHub keeps you ahead. · GitHub
点击右上角 Sign up(注册)
输入邮箱地址 → 点击 Continue
创建密码 → 点击 Continue
输入用户名(Username)→ 点击 Continue
验证是否为人类 → 点击 Continue
输入发送到邮箱的验证码
选择免费计划(Free)→ 点击 Continue
2.2 注册后必做的设置
(1)验证邮箱
-
登录邮箱,点击 GitHub 发送的验证链接
(2)设置头像
-
点击右上角头像 → Settings → Profile → Picture(上传图片)
(3)开启两步验证(2FA) ⭐ 非常重要
-
Settings → Password and authentication → Enable two-factor authentication
-
推荐使用 Authenticator App(如 Google Authenticator)
(4)添加 SSH 密钥(可选,推荐)
-
Settings → SSH and GPG keys → New SSH key
-
用于免密码推送代码
3. 首页(Home)所有按钮说明
登录后看到的首页包含以下功能区域:
3.1 左侧栏
| Home | 返回首页 |
| Issues | 查看所有仓库的 Issue |
| Pull requests | 查看所有 PR |
| Marketplace | GitHub 应用市场 |
| Explore | 探索热门项目和趋势 |
| Copilot | AI 编程助手 |
| (仓库列表) | 你最近访问的仓库,点击快速进入 |
3.2 中间动态流(Feed)
| Following / for you | 切换关注的人动态 / 推荐内容 |
| Starred repositories | 查看你收藏的仓库 |
| Create repository | 创建新仓库 |
| Import repository | 从其他平台导入仓库 |
3.3 右侧栏
| Recent activity | 你最近的操作记录 |
| Explore repositories | 推荐你感兴趣的仓库 |
4. 顶部导航栏(Global Navigation)
顶部导航栏在每个页面都会显示,包含以下按钮:
4.1 左侧
| GitHub Logo (🐱) | 猫爪 | 点击返回首页 |
| 搜索框 | 🔍 | 搜索仓库、用户、代码、Issue 等 |
| Search shortcuts | / | 按 / 快速聚焦搜索框 |
4.2 右侧
| + 号 | ➕ | 创建新内容(仓库、组织、Gist、Project) |
| 通知铃铛 | 🔔 | 查看通知(@你的、PR状态、Issue评论等) |
| 头像 | 👤 | 个人菜单(个人资料、设置、退出等) |
4.3 点击头像后的下拉菜单
| Your profile | 进入个人主页 |
| Your repositories | 查看你的所有仓库 |
| Your organizations | 查看你加入的组织 |
| Your projects | 查看你的项目面板 |
| Your stars | 查看你收藏的仓库 |
| Your gists | 查看你的代码片段 |
| Your sponsors | 查看你的赞助信息 |
| Upgrade | 升级到付费计划 |
| Feature preview | 体验预览功能 |
| Help | 帮助文档 |
| Settings | 账号设置 |
| Sign out | 退出登录 |
4.4 点击 + 号后的下拉菜单
| New repository | 创建新仓库 |
| Import repository | 导入外部仓库 |
| New gist | 创建代码片段 |
| New organization | 创建组织 |
| New project | 创建项目面板 |
5. 仓库页面(Repository)所有功能按钮
仓库页面是 GitHub 最核心的页面,包含以下标签和功能:
5.1 仓库顶部信息区
| 用户名/仓库名 | 显示仓库归属和名称 |
| Public / Private | 显示仓库可见性(公开/私有) |
| ⭐ Star | 收藏此仓库(点赞) |
| 👁 Watch | 订阅此仓库通知 |
| 🍴 Fork | 复制此仓库到你账号 |
| (Star 数量) | 显示收藏人数 |
| (Fork 数量) | 显示被复制次数 |
| (Watch 数量) | 显示订阅人数 |
5.2 ⭐ Star 按钮详解
| Star | 收藏仓库,方便以后查找 |
| Unstar | 取消收藏 |
| Lists(列表) | 将收藏分类到不同列表 |
| Your stars | 查看你所有收藏的仓库 |
5.3 👁 Watch 按钮详解
| Participating and @mentions | 仅通知你参与的内容和@你的 |
| All Activity | 通知所有活动 |
| Ignore | 忽略所有通知 |
| Custom | 自定义通知类型 |
5.4 🍴 Fork 按钮详解
| Fork | 复制仓库到你账号 |
| Create Fork | 创建复刻(在新页面操作) |
| (Owner) | 显示原始作者 |
Fork 的作用:
-
复制别人的项目到你账号
-
修改后可以向原作者提交 PR
-
不影响原始项目
5.5 代码区(Code Tab)
这是默认打开的页面,显示代码文件列表:
| main ▼(分支选择器) | 切换分支,查看不同分支的代码 |
| Branches | 查看所有分支列表 |
| Tags | 查看所有标签(版本) |
| Go to file | 快速跳转到某个文件 |
| Add file ▼ | 添加文件(创建新文件/上传文件) |
| Code ▼ | 克隆仓库(复制链接/打开 Codespace/下载) |
| (文件列表) | 显示所有文件和文件夹 |
| (文件夹) | 点击进入文件夹 |
| (文件名) | 点击打开文件查看内容 |
| Last commit | 显示最后一次提交信息 |
| (提交时间) | 显示文件最后修改时间 |
5.6 Add file 下拉菜单
| Create new file | 在 GitHub 上直接创建新文件 |
| Upload files | 上传本地文件到仓库 |
5.7 Code 下拉菜单
| Local | 本地克隆(复制链接/用 GitHub Desktop/用 CLI) |
| Codespaces | 在云端打开开发环境 |
| Download ZIP | 下载整个仓库为 ZIP 文件 |
5.8 文件查看页面
点击文件后进入查看页面:
| Raw | 查看文件原始内容 |
| Blame | 查看每一行代码是谁写的、什么时候写的 |
| History | 查看文件的修改历史 |
| Copy | 复制文件内容 |
| Edit this file | 在 GitHub 上直接编辑文件 |
| Delete this file | 删除此文件 |
| (代码内容) | 显示文件内容,带语法高亮 |
| (行号) | 显示代码行号 |
5.9 仓库标签页(Tabs)
仓库顶部有一排标签页:
| Code | 📁 | 查看代码文件 |
| Issues | 📋 | 问题追踪(Bug、任务、讨论) |
| Pull requests | 🔀 | 代码合并请求 |
| Actions | ⚡ | 自动化 CI/CD |
| Projects | 📊 | 项目管理面板 |
| Wiki | 📖 | 文档百科 |
| Security | 🔒 | 安全设置和扫描 |
| Insights | 📈 | 数据统计和分析 |
| Settings | ⚙️ | 仓库设置 |
6. Issues(问题追踪)完整功能
6.1 Issues 页面按钮
| New issue | 创建新 Issue |
| Search | 搜索 Issue |
| Labels | 管理标签(创建/编辑/删除) |
| Milestones | 管理里程碑 |
| Assignees | 按负责人筛选 |
| Author | 按创建者筛选 |
| Sort | 排序方式(最新/最旧/最多评论等) |
| Open / Closed | 切换查看未解决/已解决的 Issue |
6.2 创建 Issue 页面
| Title | 输入 Issue 标题 |
| Write | 编辑 Issue 描述内容 |
| Preview | 预览 Markdown 渲染效果 |
| Submit new issue | 提交 Issue |
| (模板选择) | 如果有模板,选择对应类型 |
6.3 Issue 详情页按钮
| Comment | 添加评论 |
| Close issue | 关闭 Issue |
| Reopen issue | 重新打开 Issue |
| Lock conversation | 锁定讨论(禁止新评论) |
| Pin issue | 置顶 Issue |
| Transfer issue | 转移到其他仓库 |
| Delete issue | 删除 Issue |
| Assignees | 指定负责人 |
| Labels | 添加标签 |
| Projects | 关联项目面板 |
| Milestones | 关联里程碑 |
| Development | 关联分支或 PR |
| (@用户名) | @提及某人通知他 |
| (#数字) | 引用其他 Issue 或 PR |
6.4 Issue 中的常用语法
# 引用其他 Issue
#123 → 链接到 Issue 123
Fixes #123 → 合并时自动关闭 Issue 123
Closes #123, #124 → 关闭多个 Issue
# 提及用户
@username → 通知某人
# 任务列表
– [x] 已完成
– [ ] 待完成
# 代码块
```python
print("Hello")
6.5 Labels(标签)
标签用于分类和标记 Issue/PR:
| bug | 🔴 红色 | 缺陷/错误 |
| enhancement | 🔵 蓝色 | 功能增强 |
| documentation | 🟡 黄色 | 文档相关 |
| duplicate | ⚪ 灰色 | 重复的 Issue |
| good first issue | 🟣 紫色 | 适合新手 |
| help wanted | 🟢 绿色 | 需要帮助 |
| invalid | ⬜ 白色 | 无效的 Issue |
| question | 🟠 橙色 | 问题咨询 |
| wontfix | ⬛ 黑色 | 不会修复 |
你可以自定义标签:
-
点击 Labels → New label
-
输入标签名称、描述、选择颜色
6.6 Milestones(里程碑)
里程碑用于版本规划:
| New milestone | 创建里程碑 |
| Title | 里程碑名称(如 v1.0.0) |
| Description | 描述 |
| Due date | 截止日期 |
| Close | 关闭里程碑 |
| (进度条) | 显示完成进度 |
7. Pull Request(PR)完整功能
7.1 PR 页面按钮
| New pull request | 创建新 PR |
| Search | 搜索 PR |
| Author | 按创建者筛选 |
| Assignees | 按负责人筛选 |
| Labels | 按标签筛选 |
| Sort | 排序方式 |
| Open / Closed | 切换查看未合并/已合并的 PR |
7.2 创建 PR 页面
| base ▼ | 选择要合并到的目标分支 |
| compare ▼ | 选择要合并的源分支 |
| Compare | 比较两个分支的差异 |
| Create pull request | 创建 PR |
| Create draft pull request | 创建草稿 PR(不会立即合并) |
| Title | PR 标题 |
| Write | PR 描述内容 |
| Reviewers | 指定代码审查人 |
| Assignees | 指定负责人 |
| Labels | 添加标签 |
| Projects | 关联项目面板 |
| Milestones | 关联里程碑 |
7.3 PR 详情页按钮
| Comment | 添加评论 |
| Approve | 批准 PR(同意合并) |
| Request changes | 要求修改(不同意,需修改) |
| Merge pull request | 合并 PR |
| Close pull request | 关闭 PR(不合并) |
| Reopen pull request | 重新打开 PR |
| Lock conversation | 锁定讨论 |
| Pin | 置顶 PR |
| Edit | 编辑 PR 标题和描述 |
| Convert to draft | 转为草稿状态 |
| (文件标签) | Commits / Files changed / Conversation |
7.4 PR 的合并方式
点击 Merge pull request 旁边的 ▼ 可选择合并方式:
| Merge commit | 保留所有提交历史 | 需要完整历史记录 |
| Squash and merge | 压缩为一个提交 | 保持主分支整洁 |
| Rebase and merge | 变基合并,线性历史 | 需要线性提交历史 |
7.5 Code Review(代码审查)
在 Files changed 标签页:
| Review changes | 提交审查意见 |
| Approve | 批准 |
| Request changes | 要求修改 |
| Comment | 仅评论 |
| (+ 按钮) | 在特定行添加评论 |
| Suggestion | 建议性修改(可直接采纳) |
| (文件筛选) | 按文件筛选查看 |
7.6 Draft PR(草稿 PR)
| Create draft pull request | 创建草稿状态的 PR |
| Ready for review | 标记为可审查状态 |
| Convert to draft | 将正式 PR 转为草稿 |
草稿 PR 的作用:
-
表示"还在开发中"
-
不会被合并
-
方便早期讨论和反馈
8. Actions(自动化CI/CD)
8.1 Actions 页面按钮
| New workflow | 创建新的自动化流程 |
| (Workflow 列表) | 显示所有自动化流程 |
| (状态图标) | ✅ 成功 / ❌ 失败 / 🟡 进行中 |
8.2 Workflow 详情页
| Re-run all jobs | 重新运行所有任务 |
| Cancel | 取消正在运行的任务 |
| (Job 列表) | 显示所有任务及其状态 |
| (日志) | 查看详细运行日志 |
8.3 Workflow 文件
Workflow 文件存放在 .github/workflows/ 目录下,格式为 .yml:
name: CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
steps:
– uses: actions/checkout@v4
– name: Run tests
run: npm test
8.4 触发事件
| push | 推送代码时触发 |
| pull_request | 创建/更新 PR 时触发 |
| schedule | 定时触发(cron 表达式) |
| workflow_dispatch | 手动触发 |
| release | 发布 Release 时触发 |
9. Projects(项目管理)
9.1 Projects 页面
| New project | 创建新项目面板 |
| (视图切换) | Table(表格)/ Board(看板)/ Roadmap(路线图) |
| (字段) | 自定义列(状态、优先级、负责人等) |
| (分组) | 按字段分组 |
| (筛选) | 按条件筛选 |
| (排序) | 按字段排序 |
9.2 项目面板功能
| Add item | 添加新条目 |
| Table view | 表格视图(类似 Excel) |
| Board view | 看板视图(类似 Trello) |
| Roadmap view | 路线图视图(时间线) |
| Status | 状态字段(待办/进行中/已完成) |
| Iteration | 迭代/冲刺管理 |
| (拖拽) | 拖拽卡片改变状态 |
9.3 与 Issue/PR 关联
-
在 Issue/PR 右侧面板可以关联 Project
-
在 Project 中可以直接创建 Issue
-
PR 合并后自动更新状态
10. Wiki(文档百科)
10.1 Wiki 页面按钮
| New Page | 创建新页面 |
| Edit | 编辑当前页面 |
| Delete | 删除当前页面 |
| Page History | 查看页面修改历史 |
| (侧边栏) | 显示所有页面列表 |
| Custom sidebar | 自定义侧边栏 |
10.2 Wiki 功能
| 多页面 | 创建多个文档页面 |
| Markdown | 支持 Markdown 语法 |
| 侧边栏 | 自定义导航菜单 |
| 页脚 | 自定义页面底部 |
| Git 克隆 | 可以克隆 Wiki 到本地编辑 |
11. Security(安全功能)
11.1 Security 页面标签
| Overview | 安全概览 |
| Alerts | 安全告警 |
| Code scanning | 代码扫描(CodeQL) |
| Secret scanning | 密钥扫描 |
| Dependency graph | 依赖关系图 |
| Dependabot | 依赖自动更新 |
| Security policy | 安全策略 |
| Advisories | 安全公告 |
11.2 安全功能详解
| Dependabot alerts | 检测有漏洞的依赖包 |
| Dependabot security updates | 自动创建 PR 修复漏洞 |
| Dependabot version updates | 自动更新依赖版本 |
| CodeQL | 静态代码安全分析 |
| Secret scanning | 检测代码中的密钥/Token |
| Push protection | 阻止包含密钥的推送 |
| Dependency review | PR 中显示依赖变更风险 |
11.3 配置 Dependabot
创建 .github/dependabot.yml:
version: 2
updates:
– package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
12. Insights(数据洞察)
12.1 Insights 页面标签
| Contributors | 贡献者统计(提交次数、增删行数) |
| Commits | 提交历史统计 |
| Code frequency | 代码变更频率(每周增删行数) |
| Dependency graph | 依赖关系图 |
| Community | 社区健康度检查 |
| Traffic | 流量统计(访问量、克隆数) |
| Forks | Fork 统计 |
| Stargazers | Star 统计 |
12.2 统计图表
| Contributors | 显示每个贡献者的提交次数和代码量 |
| Commit activity | 每周提交次数 |
| Code frequency | 每周新增/删除的代码行数 |
| Pulse | 本周活动摘要 |
| Network | 分支和提交的网络图 |
13. Settings(设置)所有选项详解
仓库 Settings 页面包含以下所有选项:
13.1 General(常规设置)
| Repository name | 修改仓库名称 |
| Default branch | 设置默认分支(通常是 main) |
| Social preview | 设置社交分享预览图 |
| Features | 功能开关(Issues/Projects/Wiki/Discussions) |
| Merge button | 允许的合并方式 |
| Automatically delete head branches | PR 合并后自动删除分支 |
| Archives | 归档仓库(设为只读) |
| Transfer | 转让仓库给其他用户/组织 |
| Delete this repository | 删除仓库(危险操作) |
13.2 Access(访问权限)
| Collaborators | 添加协作者(直接邀请) |
| Teams | 添加团队(组织仓库) |
| Moderation roles | 角色管理 |
13.3 Code and automation(代码和自动化)
| Branches | 分支保护规则 |
| Tags | 标签保护规则 |
| Rules | 规则集(Rulesets) |
| Actions | Actions 设置 |
| Webhooks | Webhook 配置 |
| Environments | 部署环境配置 |
| Pages | GitHub Pages 设置 |
13.4 Security(安全)
| Code security and analysis | 代码安全分析配置 |
| Secret scanning | 密钥扫描 |
| Push protection | 推送保护 |
| Dependabot | Dependabot 配置 |
13.5 Integrations(集成)
| GitHub Apps | 安装 GitHub 应用 |
| Email notifications | 邮件通知设置 |
| Deploy keys | 部署密钥 |
13.6 分支保护规则(Branch protection rules)
点击 Add rule 后:
| Branch name pattern | 设置匹配的分支名(如 main 或 *) |
| Require a pull request before merging | 要求 PR 才能合并 |
| Require approvals | 要求 N 人批准 |
| Dismiss stale reviews | 新提交后取消旧批准 |
| Require status checks | 要求 CI 检查通过 |
| Require conversation resolution | 要求所有讨论已解决 |
| Require signed commits | 要求签名提交 |
| Require linear history | 要求线性历史 |
| Include administrators | 管理员也遵守规则 |
| Allow force pushes | 允许强制推送 |
| Allow deletions | 允许删除分支 |
13.7 Webhooks
| Add webhook | 添加 Webhook |
| Payload URL | 接收事件的 URL |
| Content type | 数据格式(JSON/form) |
| Secret | 签名密钥 |
| Events | 选择触发的事件 |
| Active | 是否启用 |
13.8 Secrets and variables
| New repository secret | 创建仓库密钥 |
| New environment secret | 创建环境密钥 |
| New repository variable | 创建仓库变量 |
| New environment variable | 创建环境变量 |
Secrets vs Variables:
-
Secrets:加密存储,日志中隐藏(用于密码、API 密钥)
-
Variables:明文存储(用于配置值、环境名)
14. 个人主页(Profile)
14.1 个人主页内容
| 头像 | 你的头像 |
| 用户名 | @username |
| 昵称 | 显示名称 |
| Bio | 个人简介 |
| Follow | 关注/取消关注 |
| Followers | 粉丝数量 |
| Following | 关注的人数 |
| Stars | 收藏的仓库数 |
| (组织头像) | 你加入的组织 |
| Contribution graph | 贡献热力图(绿色方块) |
| Pinned | 置顶的仓库 |
| (仓库列表) | 你的所有仓库 |
14.2 个人主页标签
| Overview | 概览(贡献图 + 置顶仓库) |
| Repositories | 所有仓库 |
| Projects | 项目面板 |
| Packages | 发布的包 |
| Stars | 收藏的仓库 |
14.3 贡献热力图(Contribution Graph)
| ⬜ 灰色 | 无贡献 |
| 🟢 浅绿 | 少量贡献 |
| 🟢 中绿 | 中等贡献 |
| 🟢 深绿 | 大量贡献 |
贡献包括:
-
提交代码(Commit)
-
创建 PR
-
创建 Issue
-
Code Review
14.4 置顶仓库(Pinned Repositories)
| Customize your pins | 自定义置顶的仓库 |
| (最多6个) | 最多置顶 6 个仓库 |
14.5 Profile README
创建一个与用户名相同的仓库,添加 README.md,内容会自动显示在个人主页。
15. 组织(Organization)
15.1 创建组织
| 1 | 点击右上角 + → New organization |
| 2 | 选择计划(Free/Team/Enterprise) |
| 3 | 填写组织名称和联系邮箱 |
| 4 | 邀请成员 |
15.2 组织页面标签
| Overview | 组织概览 |
| Repositories | 组织的所有仓库 |
| Projects | 组织的项目面板 |
| Packages | 组织发布的包 |
| Teams | 团队管理 |
| People | 成员管理 |
| Settings | 组织设置 |
15.3 Teams(团队)
| New team | 创建团队 |
| Team name | 团队名称 |
| Team visibility | 团队可见性 |
| (成员列表) | 团队成员 |
| (仓库权限) | 团队对仓库的访问权限 |
15.4 People(成员管理)
| Invite member | 邀请新成员 |
| Role | 角色(Owner/Member) |
| Teams | 所属团队 |
| (权限管理) | 设置成员权限 |
16. GitHub Marketplace
16.1 功能
| Browse | 浏览所有应用 |
| Categories | 按分类筛选 |
| Pricing | 按价格筛选(免费/付费) |
| Search | 搜索应用 |
16.2 常用应用类别
| CI/CD | Travis CI, CircleCI |
| Code quality | Codecov, SonarCloud |
| Project management | ZenHub, Waffle |
| Monitoring | Sentry, Datadog |
| Communication | Slack, Microsoft Teams |
17. GitHub Codespaces
17.1 什么是 Codespaces
-
基于云的开发环境
-
在浏览器中运行完整的 VS Code
-
自动配置开发工具和依赖
17.2 使用方式
| 从仓库创建 | 仓库页面 → Code → Codespaces → Create codespace |
| 从 VS Code | 安装 GitHub Codespaces 扩展 |
| 从浏览器 | 直接打开 github.dev(按 . 键) |
17.3 Codespaces 页面按钮
| New codespace | 创建新环境 |
| (环境列表) | 显示所有 Codespace |
| Stop | 停止环境 |
| Delete | 删除环境 |
| Open in VS Code | 在本地 VS Code 中打开 |
| Rename | 重命名 |
17.4 devcontainer 配置
在 .devcontainer/devcontainer.json 中配置:
{
"name": "My Dev Container",
"image": "mcr.microsoft.com/devcontainers/javascript-node:20",
"forwardPorts": [3000],
"postCreateCommand": "npm install"
}
18. GitHub Copilot
18.1 功能
| Code completion | 根据上下文自动补全代码 |
| Copilot Chat | 对话式编程助手 |
| PR summary | 自动生成 PR 描述 |
| CLI help | 命令行命令建议 |
| Test generation | 自动生成测试代码 |
18.2 订阅计划
| Copilot Free | 免费 | 每月 2000 次补全 + 50 次聊天 |
| Copilot Pro | $10/月 | 无限补全 + 聊天 |
| Copilot Pro+ | $39/月 | 全部模型访问 |
| Copilot Business | $19/人/月 | 企业管理 |
| Copilot Enterprise | $39/人/月 | 企业定制 |
18.3 使用方式
| Tab | 接受代码建议 |
| Alt + ] | 查看下一个建议 |
| Alt + [ | 查看上一个建议 |
| Ctrl + I | 打开 Copilot Chat |
| Esc | 拒绝建议 |
19. GitHub Discussions
19.1 功能
| New discussion | 创建新讨论 |
| Categories | 讨论分类 |
| Answered/Unanswered | 标记已回答/未回答 |
| Upvote | 点赞 |
| Convert to issue | 将讨论转为 Issue |
19.2 讨论分类
| Announcements | 公告(仅管理员可发布) |
| General | 一般讨论 |
| Ideas | 想法建议 |
| Polls | 投票 |
| Q&A | 问答 |
19.3 启用 Discussions
-
Settings → Features → 勾选 Discussions
-
或点击 Set up discussions
20. GitHub Sponsors
20.1 功能
| Sponsor | 赞助开发者 |
| One-time | 一次性赞助 |
| Monthly | 每月定期赞助 |
| Tiers | 赞助等级(不同金额不同回报) |
20.2 设置赞助
-
Settings → Sponsors
-
填写描述和赞助等级
-
连接 Stripe 或 PayPal
21. GitHub API
21.1 REST API
| 获取仓库信息 | GET | /repos/{owner}/{repo} |
| 创建 Issue | POST | /repos/{owner}/{repo}/issues |
| 获取用户信息 | GET | /users/{username} |
| 列出 PR | GET | /repos/{owner}/{repo}/pulls |
21.2 GraphQL API
query {
repository(owner: "facebook", name: "react") {
stargazerCount
forkCount
issues(states: OPEN) {
totalCount
}
}
}
21.3 认证方式
| Personal Access Token | 个人访问令牌 |
| GitHub App | 应用认证 |
| OAuth App | OAuth 认证 |
| GitHub CLI | gh auth login |
21.4 速率限制
| 未认证 | 60 次/小时 |
| 认证用户 | 5000 次/小时 |
| GitHub App | 15000 次/小时 |
22. GitHub CLI(命令行工具)
22.1 安装
# macOS
brew install gh
# Windows
winget install GitHub.cli
# Linux
sudo apt install gh
22.2 登录
gh auth login
22.3 常用命令
| gh repo create | 创建仓库 |
| gh repo clone | 克隆仓库 |
| gh repo fork | Fork 仓库 |
| gh issue list | 列出 Issue |
| gh issue create | 创建 Issue |
| gh pr list | 列出 PR |
| gh pr create | 创建 PR |
| gh pr checkout | 切换到 PR 分支 |
| gh pr merge | 合并 PR |
| gh pr review –approve | 批准 PR |
| gh run list | 列出 Workflow 运行 |
| gh run watch | 实时监视运行 |
| gh release create | 创建 Release |
| gh gist create | 创建 Gist |
| gh codespace create | 创建 Codespace |
| gh alias set | 创建命令别名 |
23. GitHub Pages(静态网站)
23.1 启用 Pages
-
Settings → Pages
-
选择源分支和目录
-
点击 Save
23.2 站点类型
| User 站点 | username.github.io | 仓库名必须是 username.github.io |
| Project 站点 | username.github.io/repo | 任意仓库 |
23.3 自定义域名
Pages 设置中填写域名
DNS 添加记录:
-
A 记录 → GitHub IP
-
或 CNAME → username.github.io
勾选 Enforce HTTPS
23.4 静态站点生成器
| Jekyll | Ruby(GitHub 原生支持) |
| Hugo | Go |
| Next.js | JavaScript |
| VitePress | Vue |
| Docusaurus | React |
24. GitHub Packages(包管理)
24.1 支持的包类型
| npm | Node.js 包 |
| Maven/Gradle | Java 包 |
| RubyGems | Ruby 包 |
| NuGet | .NET 包 |
| Docker (GHCR) | 容器镜像 |
24.2 使用 GHCR(GitHub Container Registry)
# 登录
echo $GITHUB_TOKEN | docker login ghcr.io -u USERNAME –password-stdin
# 拉取镜像
docker pull ghcr.io/OWNER/IMAGE:tag
# 推送镜像
docker tag my-image ghcr.io/OWNER/IMAGE:latest
docker push ghcr.io/OWNER/IMAGE:latest
25. Git 基础操作命令
25.1 安装与配置
# 安装 Git
# Windows: https://git-scm.com
# macOS: brew install git
# Linux: sudo apt install git
# 配置身份
git config –global user.name "你的名字"
git config –global user.email "你的邮箱"
# 查看配置
git config –list
25.2 核心命令
# ========== 初始化与克隆 ==========
git init # 初始化本地仓库
git clone <url> # 克隆远程仓库
git clone –depth 1 <url> # 浅克隆(只取最新提交)
# ========== 日常操作 ==========
git status # 查看状态
git add <file> # 添加文件到暂存区
git add . # 添加所有变更
git commit -m "提交说明" # 提交到本地仓库
git push origin main # 推送到远程
git pull origin main # 拉取远程更新
git fetch # 拉取但不合并
# ========== 查看历史 ==========
git log # 查看提交历史
git log –oneline –graph # 图形化简洁历史
git show <commit-hash> # 查看某次提交详情
git diff # 查看未暂存的变更
git diff –staged # 查看已暂存的变更
# ========== 撤销操作 ==========
git restore <file> # 撤销未暂存的修改
git restore –staged <file> # 取消暂存
git reset –soft HEAD~1 # 撤销最近一次提交(保留修改)
git reset –hard HEAD~1 # 撤销最近一次提交(丢弃修改)
git revert <commit-hash> # 创建一个反向提交(安全撤销)
# ========== 分支操作 ==========
git branch # 查看分支
git branch <name> # 创建分支
git checkout <name> # 切换分支
git checkout -b <name> # 创建并切换
git switch <name> # 切换分支(新语法)
git switch -c <name> # 创建并切换(新语法)
git merge <branch> # 合并分支
git branch -d <name> # 删除已合并分支
git branch -D <name> # 强制删除分支
git push origin –delete <name> # 删除远程分支
# ========== 远程操作 ==========
git remote -v # 查看远程仓库
git remote add origin <url> # 添加远程仓库
git remote set-url origin <url> # 修改远程地址
25.3 .gitignore
# 忽略 node_modules 目录
node_modules/
# 忽略环境变量文件
.env
.env.local
# 忽略 IDE 配置
.idea/
.vscode/
# 忽略构建输出
dist/
build/
# 忽略操作系统文件
.DS_Store
Thumbs.db
25.4 Git 工作区原理
工作区 (Working Directory)
↓ git add
暂存区 (Staging Area / Index)
↓ git commit
本地仓库 (Local Repository)
↓ git push
远程仓库 (Remote Repository)
26. 新手常见问题
Q1:Git 和 GitHub 有什么区别?
-
Git:版本控制软件,安装在本地电脑上
-
GitHub:基于 Git 的代码托管网站
Q2:Public 和 Private 仓库有什么区别?
-
Public:所有人都能看到你的代码
-
Private:只有你和授权的人能看到
Q3:Fork 和 Clone 有什么区别?
-
Fork:在 GitHub 上复制仓库到你账号(远程操作)
-
Clone:将仓库下载到本地电脑(本地操作)
Q4:如何参与开源项目?
Fork 项目仓库
Clone 到本地
创建功能分支
修改代码并提交
Push 到你的 Fork
创建 Pull Request
等待审核和合并
Q5:PR 被拒绝了怎么办?
查看 Reviewer 的反馈意见
在本地修改代码
提交并 Push 到同一分支
PR 会自动更新
通知 Reviewer 重新审查
Q6:如何删除仓库?
-
Settings → 最底部 → Delete this repository
-
输入仓库名确认删除
Q7:如何修改仓库名称?
-
Settings → General → Repository name → Rename
Q8:如何转让仓库?
-
Settings → General → Transfer ownership
Q9:如何恢复误删的分支?
# 查看历史操作记录
git reflog
# 找到删除前的 commit hash,然后
git checkout -b <branch-name> <commit-hash>
Q10:提交信息写错了怎么办?
# 修改最近一次提交信息
git commit –amend -m "新的提交信息"
# 如果已经 push 了,需要强制推送
git push –force
📌 常用快捷键
| / | 聚焦搜索框 |
| t | 文件查找(在仓库页面) |
| . | 打开 github.dev 编辑器 |
| g c | 跳转到 Code 标签 |
| g i | 跳转到 Issues |
| g p | 跳转到 Pull requests |
| g a | 跳转到 Actions |
| g b | 跳转到 Projects |
| g w | 跳转到 Wiki |
| ? | 显示所有快捷键 |
🔗 官方资源
| GitHub 文档 | GitHub Docs |
| GitHub Skills(免费教程) | Redirecting to GitHub Learn |
| GitHub 博客 | Home – The GitHub Blog |
| GitHub 社区 | community · Discussions · GitHub |
| GitHub 状态 | GitHub Status |
| Git 文档 | Redirecting… |
| Markdown 指南 | Markdown Guide |
📝 提示:本文档涵盖了 GitHub 的所有主要功能和按钮。建议收藏本文档,遇到问题时随时查阅。
💡 记住:学习 GitHub 最好的方式就是动手实践。创建一个测试仓库,尝试所有功能,遇到问题就查阅本文档。
网硕互联帮助中心



评论前必须登录!
注册