02 - GitHub 仓库管理与 Issue
本章目标:掌握 GitHub 仓库的日常管理,学会用 Issue 跟踪任务和 Bug。
⚠️ 本章大部分操作都在 🌐 浏览器 中完成,不需要命令行。
一、Issue 是什么?
Issue 就是 GitHub 上的"任务单",用来记录 Bug、新功能需求、待办事项等。
全部在 🌐 浏览器中操作,不用命令行。
二、创建 Issue
操作位置:🌐 浏览器
1. 打开你的仓库页面(https://github.com/你的用户名/my-git-practice)
2. 点击顶部的 "Issues" 标签页
3. 点击绿色按钮 "New issue"
4. 填写标题和描述,比如:
标题:[Bug] 登录页面表单验证失效
描述:
## 问题描述
用户登录时,不输入密码也能提交表单
## 复现步骤
1. 打开登录页面
2. 不输入密码
3. 点击登录按钮
## 期望行为
应该在前端提示"请输入密码"
5. 点击 "Submit new issue"
就这么简单,Issue 就创建好了。
三、Issue 的基本操作
操作位置:🌐 浏览器(在 Issue 页面右侧)
打开一个 Issue 后,右侧有这些操作:
📋 Assignees(指派人)
→ 点击 "Assignees" → 选择要把这个 Issue 分配给谁
→ 一般分配给自己或同事
🏷 Labels(标签)
→ 点击 "Labels" → 选择标签
→ 常用标签:
- bug(Bug)
- enhancement(新功能)
- documentation(文档)
- good first issue(适合新手的)
- help wanted(需要帮助)
📅 Milestone(里程碑)
→ 点击 "Milestone" → 选择或创建里程碑
→ 比如 "v1.0 发版"、"第二周 sprint"
📋 Projects(项目看板)
→ 点击 "Projects" → 关联到项目看板
→ 可以把 Issue 放到看板的某个列里
四、在 Issue 中评论和引用
操作位置:🌐 浏览器(在 Issue 的评论框里)
Issue 底部有个评论框,你可以:
1. 写评论:
直接在评论框输入文字,点击 "Comment" 发送
2. 引用其他 Issue:
在评论框输入 #123
→ GitHub 会自动弹出 Issue 列表让你选
→ 发送后 #123 变成一个可点击的链接
3. 提及某人:
在评论框输入 @某人的用户名
→ 比如 @zhangsan
→ 对方会收到通知
4. 引用某次提交:
在评论框输入完整的 commit hash
→ 比如 abc1234def5678
→ 会自动变成链接,点击可查看那次提交
5. 引用代码:
在代码文件页面,点击某一行
→ 会出现 "Reference in new issue" 选项
→ 自动关联到这个 Issue
五、Issue 模板(进阶)
Issue 模板是提前定义好格式,让团队成员创建 Issue 时按格式填写。
第一步:在本地创建模板文件
💻 VS Code 或 Git Bash 中操作:
在你的项目目录下创建这个文件:
.github/ISSUE_TEMPLATE/bug_report.md
bash
# 💻 Git Bash 中执行(在项目目录下)
mkdir -p .github/ISSUE_TEMPLATE
cat > .github/ISSUE_TEMPLATE/bug_report.md << 'EOF'
---
name: Bug Report
about: 报告一个 Bug
title: '[Bug] '
labels: bug
assignees: ''
---
## 问题描述
<!-- 简要描述遇到的问题 -->
## 复现步骤
1.
2.
3.
## 期望行为
<!-- 你期望会发生什么 -->
## 实际行为
<!-- 实际发生了什么 -->
## 环境信息
- 浏览器:
- 操作系统:
EOF
第二步:提交并推送到 GitHub
bash
# 💻 Git Bash 中执行
git add .github/ISSUE_TEMPLATE/bug_report.md
git commit -m "docs: add issue template"
git push
第三步:在浏览器中使用模板
🌐 浏览器操作:
1. 打开仓库 → Issues → New issue
2. 现在会看到模板选择页面!
3. 点击 "Bug Report"
4. 表单已经按模板格式预填好了
5. 填写具体内容,提交即可
六、关闭 Issue
操作位置:🌐 浏览器
方式一:在 Issue 页面点击 "Close issue" 按钮
方式二:在评论框输入:
/close
方式三(自动关闭):在 commit message 或 PR 描述中写:
Fixes #123
Closes #123
Resolves #123
→ 合并 PR 后,Issue 会自动关闭
七、GitHub Projects(项目看板)
操作位置:🌐 浏览器
1. 打开仓库页面 → 点击顶部 "Projects" 标签
2. 点击 "New project"
3. 选择 "Board"(看板视图)
4. 给看板起个名字,比如 "开发看板"
5. 创建列:
- 📋 To Do(待办)
- 🏃 In Progress(进行中)
- 👀 In Review(审核中)
- ✅ Done(完成)
6. 把 Issue 拖到对应列
→ 直接用鼠标拖拽 Issue 卡片
看板效果:
┌──────────┬──────────────┬──────────────┬──────────┐
│ 📋 To Do │ 🏃 In Progress │ 👀 In Review │ ✅ Done │
├──────────┼──────────────┼──────────────┼──────────┤
│ Issue #5 │ Issue #3 │ Issue #1 │ Issue #2 │
│ Issue #6 │ Issue #4 │ │ │
└──────────┴──────────────┴──────────────┴──────────┘
八、GitHub Releases(版本发布)
操作位置:🌐 浏览器
1. 打开仓库页面 → 右侧 "Releases" → "Create a new release"
2. 选择或创建 Tag:
- Tag name:v1.0.0
- Target:main
3. 填写:
- Release title:v1.0.0
- 描述(用 Markdown 写):
## ✨ 新功能
- 添加用户登录功能
## 🐛 Bug 修复
- 修复表单验证问题
4. 可以上传附件(拖拽文件到 "Attach binaries" 区域)
5. 点击 "Publish release"
九、GitHub Wiki
操作位置:🌐 浏览器
1. 打开仓库页面 → 点击顶部 "Wiki" 标签
2. 点击 "Create the first page"
3. 用 Markdown 编写文档
4. 点击 "Save Page"
Wiki 适合放:
- 详细的安装指南
- API 文档
- 架构设计文档
- 常见问题 FAQ
十、通知设置
操作位置:🌐 浏览器
1. 点击右上角头像 → Settings → Notifications
2. 推荐设置:
- Email notifications:选择接收邮件
- Web notifications:浏览器通知
- Default watching:选择 "Only participating and @mentions"
(只通知与你相关的,减少噪音)
3. 对单个仓库设置通知:
打开仓库页面 → 点击右上角 "Watch" → 选择:
- All Activity:所有活动都通知(太多了)
- Participating and @mentions:只通知与你相关的(推荐)
- Ignore:完全不通知
十一、练习清单
全部在 🌐 浏览器中操作,不用命令行:
- 🌐 创建一个 Issue(Bug Report)
- 🌐 给 Issue 打标签(bug / feature)
- 🌐 给 Issue 分配指派人(Assign yourself)
- 🌐 在 Issue 中评论,引用 #1 和 @某人
- 🌐 创建一个 GitHub Project 看板
- 🌐 把 Issue 拖到看板的 "To Do" 列
- 💻 在本地创建 Issue 模板文件并推送到 GitHub
- 🌐 用模板创建一个新的 Issue
- 🌐 创建一个 Release(tag v0.1.0)
上一章 :01-GitHub账号配置与SSH密钥
下一章:03-Pull Request全流程实战(03-Pull Request全流程实战.md)