github实战指南02-仓库管理与 Issue

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)

相关推荐
邵宇然2 小时前
内存分配优化:基于 Unsafe 指针与内存对齐的 Rust 区域分配器
人工智能
海兰2 小时前
【游戏】迷雾镇(Mist Town)AI 沙箱游戏详细设计与部署指南(附源代码)
人工智能·游戏
小赖同学啊2 小时前
智能连接器集群化高可用生产方案
linux·运维·人工智能
ZStack开发者社区2 小时前
基于AI Agent的ZCF API文档全链路自动化
运维·人工智能·自动化
沈麽鬼2 小时前
别瞎用AI写代码!90%开发者都搞错了AI编程的底层逻辑
人工智能·ai编程·trae
小陈爱编程2 小时前
我终于把 Codex 的 API 配置理顺了:从踩坑到跑通
人工智能
不爱洗脚的小滕2 小时前
【Agent】如何为 AI Agent 设计高可用的 Tools
人工智能·aigc·ai编程·rag
姗姗来迟了2 小时前
前端传图片给多模态 Agent:压缩、预览、格式那些破事
人工智能
Sam09273 小时前
Spec Coding 和 Vibe Coding 的区别:AI Coding 从感觉驱动到规格驱动
人工智能·ai