git~issue在github/gitlab中的使用

本文檔適用於github和gitlab

issue介紹

GitHub 中的 issue 功能是一種用於跟蹤項目中任務、缺陷、功能請求和討論的工具。通過 issue,項目成員可以提出問題、報告 bug、請求新功能,進行討論,並且能夠將 issue 與代碼變更(比如 pull request)關聯起來,以便更好地進行協作和項目管理。

以下是 GitHub 中 issue 功能的一些特點和用途:

  1. 創建和分配任務:可以使用 issue 來記錄需要完成的任務,包括 bug 修復、功能開發等,然後對這些任務進行分配給團隊成員。

  2. bug 追蹤:開發人員和用戶可以通過 issue 報告發現的 bug,然後進行跟蹤和解決。

  3. 討論和建議:項目成員可以在 issue 中進行討論、提出新的想法和建議,從而促進項目的進步和改進。

  4. 標記和篩選:可以爲 issue 添加標籤(label)和里程碑(milestone),以便對任務進行分類和篩選。

  5. 關聯代碼變更:可以將 issue 與具體的代碼變更(如 pull request)關聯起來,以便更好地追蹤代碼變更背後的原因和需求。

  6. 自動關閉:通過在 commit message 或者 pull request 描述中加入特定的關鍵詞和 issue 編號,可以實現當代碼變更被合併後自動關閉相關的 issue。

總之,GitHub 中的 issue 功能爲團隊協作和項目管理提供了一個靈活而強大的工具,有助於提高項目的可見性、協作效率和質量管理水平。

issue實踐

一 Issue label的定義

下面選自阿里higress的label定義規範

提交消息可以幫助審稿人更好地理解提交 PR 的目的是什麼。它還可以幫助加快代碼審查過程。我們鼓勵貢獻者使用顯式的提交信息,而不是模糊的信息。一般來說,我們提倡以下提交消息類型:

  • docs: xxxx. For example, "docs: add docs about Higress cluster installation".
  • feature: xxxx.For example, "feature: use higress config instead of istio config".
  • bugfix: xxxx. For example, "bugfix: fix panic when input nil parameter".
  • refactor: xxxx. For example, "refactor: simplify to make codes more readable".
  • test: xxx. For example, "test: add unit test case for func InsertIntoArray".

其他可讀和顯式的表達方式。

二 根據bug或者需求建立issue,支持markdown語法

三 分支代碼修改完成,提交時,commit 與issue關聯,或者在申請RP/MR時,關聯對應的issue id

四 分支審覈之後,合併到目標分支後,對應的issue將會自動關閉

五 commit合併後,關聯issue自動全閉的關鍵字總結

  • Close, Closes, Closed, Closing, close, closes, closed, closing
  • Fix, Fixes, Fixed, Fixing, fix, fixes, fixed, fixing
  • Resolve, Resolves, Resolved, Resolving, resolve, resolves, resolved, resolving
  • Implement, Implements, Implemented, Implementing, implement, implements, implemented, implementing
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章