Github Ops

affaan-m/ECC/docs/zh-CN/skills/github-ops

作者 affaan-mef648e01899ba3e8dc6371642deaaf64b4477775無授權條款275K 個星標收錄於 2026年10月9日更新於 2026年10月9日儲存庫4 天前更新

GitHub 仓库操作、自动化与管理。使用 gh CLI 进行问题分类、PR 管理、CI/CD 操作、发布管理和安全监控。当用户想要管理 GitHub 问题、PR、CI 状态、发布、贡献者、过期项目或任何超出简单 git 命令的 GitHub 操作任务时使用。

僅含說明DevOps & Cloud
AI 產生的概覽

使用 gh CLI 管理 GitHub 儲存庫:議題分類、PR 審查、CI 偵錯、發佈與安全警示。

功能
提供一套使用 gh CLI 進行 GitHub 儲存庫操作的流程,涵蓋依類型與優先順序分類議題、PR 審查與過期策略、CI/CD 失敗排查、發佈與變更日誌準備,以及 Dependabot 與密鑰掃描警示監控。每個環節都提供檢查清單、品質門檻與範例 gh 指令。產出包括已加標籤與回覆的議題、PR 狀態評估、發佈說明與安全警示摘要。
適用情境
當使用者想要分類 GitHub 議題、審查或管理 PR、排查失敗的 CI 工作流程、準備發佈,或監控 Dependabot 與安全警示時使用。適用於超出簡單 git 指令範圍的開源專案維護工作。
執行需求
需要安裝 gh CLI 並透過 gh auth login 完成驗證,同時需要儲存庫存取權限與連線至 GitHub 的網路。此技能不含指令碼,僅為操作說明。

GitHub 操作

管理 GitHub 仓库,重点关注社区健康、CI 可靠性和贡献者体验。

何时激活

  • 对议题进行分类(分类、打标签、回复、去重)
  • 管理 PR(审查状态、CI 检查、过期 PR、合并就绪状态)
  • 调试 CI/CD 失败
  • 准备发布和变更日志
  • 监控 Dependabot 和安全告警
  • 管理开源项目的贡献者体验
  • 用户说“检查 GitHub”、“分类议题”、“审查 PR”、“合并”、“发布”、“CI 坏了”

工具要求

  • 所有 GitHub API 操作均使用 gh CLI
  • 通过 gh auth login 配置仓库访问权限

议题分类

按类型和优先级对每个议题进行分类:

类型: bug, feature-request, question, documentation, enhancement, duplicate, invalid, good-first-issue

优先级: critical(破坏性/安全相关), high(重大影响), medium(锦上添花), low(外观/体验优化)

分类工作流程

  1. 阅读议题标题、正文和评论
  2. 检查是否与现有议题重复(通过关键词搜索)
  3. 通过 gh issue edit --add-label 应用适当的标签
  4. 对于问题:起草并发布有帮助的回复
  5. 对于需要更多信息的 Bug:要求提供复现步骤
  6. 对于适合新手的议题:添加 good-first-issue 标签
  7. 对于重复议题:评论并附上原始议题链接,添加 duplicate 标签
bash
# Search for potential duplicatesgh issue list --search "keyword" --state all --limit 20
# Add labelsgh issue edit <number> --add-label "bug,high-priority"
# Comment on issuegh issue comment <number> --body "Thanks for reporting. Could you share reproduction steps?"

PR 管理

审查清单

  1. 检查 CI 状态:gh pr checks <number>
  2. 检查是否可合并:gh pr view <number> --json mergeable
  3. 检查 PR 的创建时间和最后活动时间
  4. 标记超过 5 天未审查的 PR
  5. 对于社区 PR:确保包含测试并遵循项目规范

过期策略

  • 超过 14 天无活动的议题:添加 stale 标签,评论要求更新
  • 超过 7 天无活动的 PR:评论询问是否仍在进行
  • 30 天内无回复的过期议题自动关闭(添加 closed-stale 标签)
bash
# Find stale issues (no activity in 14+ days)gh issue list --label "stale" --state open
# Find PRs with no recent activitygh pr list --json number,title,updatedAt --jq '.[] | select(.updatedAt < "2026-03-01")'

CI/CD 操作

当 CI 失败时:

  1. 检查工作流运行:gh run view <run-id> --log-failed
  2. 识别失败的步骤
  3. 判断是不稳定测试还是真正的失败
  4. 对于真正的失败:确定根本原因并提出修复建议
  5. 对于不稳定测试:记录模式以便未来调查
bash
# List recent failed runsgh run list --status failure --limit 10
# View failed run logsgh run view <run-id> --log-failed
# Re-run a failed workflowgh run rerun <run-id> --failed

发布管理

准备发布时:

  1. 确保主分支上的所有 CI 检查通过
  2. 审查未发布的更改:gh pr list --state merged --base main
  3. 根据 PR 标题生成变更日志
  4. 创建发布:gh release create
bash
# List merged PRs since last releasegh pr list --state merged --base main --search "merged:>2026-03-01"
# Create a releasegh release create v1.2.0 --title "v1.2.0" --generate-notes
# Create a pre-releasegh release create v1.3.0-rc1 --prerelease --title "v1.3.0 Release Candidate 1"

安全监控

bash
# Check Dependabot alertsgh api repos/{owner}/{repo}/dependabot/alerts --jq '.[].security_advisory.summary'
# Check secret scanning alertsgh api repos/{owner}/{repo}/secret-scanning/alerts --jq '.[].state'
# 审查依赖项更新并提交给用户批准,切勿自动合并gh pr list --label "dependencies" --json number,title
  • 审查安全的依赖项更新并提交给用户批准,切勿自动合并
  • 立即标记任何严重/高严重性告警
  • 至少每周检查一次新的 Dependabot 告警

质量门禁

在完成任何 GitHub 操作任务之前:

  • 所有已分类的议题都带有适当的标签
  • 没有超过 7 天未收到审查或评论的 PR
  • CI 失败已被调查(不仅仅是重新运行)
  • 发布包含准确的变更日志
  • 安全告警已被确认并跟踪

來源與署名

來源:affaan-m/ECC位於docs/zh-CN/skills/github-ops提交ef648e0

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架