github-ops

github-ops

熱門

GitHub 儲存庫操作、自動化與管理。包含議題分類、PR 管理、CI/CD 操作、版本發佈與安全監控,使用 gh CLI 執行。當使用者想要管理 GitHub 議題、PR、CI 狀態、版本發佈、貢獻者、過期項目或任何超出基本 git 指令的 GitHub 操作任務時使用。

23萬星標
3.5萬分支
更新於 2026/7/21
SKILL.md
唯讀
名稱
github-ops
描述

GitHub 儲存庫操作、自動化與管理。包含議題分類、PR 管理、CI/CD 操作、版本發佈與安全監控,使用 gh CLI 執行。當使用者想要管理 GitHub 議題、PR、CI 狀態、版本發佈、貢獻者、過期項目或任何超出基本 git 指令的 GitHub 操作任務時使用。

GitHub 操作

管理 GitHub 儲存庫,重點關注社群健康、CI 可靠性與貢獻者體驗。

啟用時機

  • 分類議題(分類、標籤、回覆、去重)
  • 管理 PR(審查狀態、CI 檢查、過期 PR、合併準備)
  • 除錯 CI/CD 失敗
  • 準備版本發佈與更新日誌
  • 監控 Dependabot 與安全警報
  • 管理開源專案的貢獻者體驗
  • 使用者說「檢查 GitHub」、「分類議題」、「審查 PR」、「合併」、「發佈」、「CI 壞了」

工具需求

  • gh CLI 用於所有 GitHub API 操作
  • 透過 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 標籤
# 搜尋可能的重複議題
gh issue list --search "keyword" --state all --limit 20

# 新增標籤
gh issue edit <number> --add-label "bug,high-priority"

# 在議題中留言
gh issue comment <number> --body "感謝回報。能否提供重現步驟?"

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 標籤)
# 尋找過期議題(14 天以上無活動)
gh issue list --label "stale" --state open

# 尋找近期無活動的 PR
gh 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. 對於隨機測試失敗:記錄模式供後續調查
# 列出最近失敗的執行
gh run list --status failure --limit 10

# 檢視失敗的執行日誌
gh run view <run-id> --log-failed

# 重新執行失敗的工作流程
gh run rerun <run-id> --failed

版本發佈管理

準備發佈時:

  1. 確認 main 分支上的所有 CI 都通過
  2. 檢視未發佈的變更:gh pr list --state merged --base main
  3. 根據 PR 標題產生更新日誌
  4. 建立發佈:gh release create
# 列出上次發佈後已合併的 PR
gh pr list --state merged --base main --search "merged:>2026-03-01"

# 建立發佈
gh release create v1.2.0 --title "v1.2.0" --generate-notes

# 建立預發佈版本
gh release create v1.3.0-rc1 --prerelease --title "v1.3.0 Release Candidate 1"

安全監控

# 檢查 Dependabot 警報
gh api repos/{owner}/{repo}/dependabot/alerts --jq '.[].security_advisory.summary'

# 檢查密碼掃描警報
gh api repos/{owner}/{repo}/secret-scanning/alerts --jq '.[].state'

# 檢閱並自動合併安全的相依性更新
gh pr list --label "dependencies" --json number,title
  • 檢閱並自動合併安全的相依性更新
  • 立即標記任何重大/高嚴重性警報
  • 至少每週檢查新的 Dependabot 警報

品質閘門

在完成任何 GitHub 操作任務前:

  • 所有已分類的議題都有適當標籤
  • 沒有超過 7 天未審查或留言的 PR
  • CI 失敗已調查(不只是重新執行)
  • 發佈版本包含準確的更新日誌
  • 安全警報已確認並追蹤