• 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的定义,可以按着类型对issue打标签,如文档、bug、新功能、测试用例、线上bug等等。

    下面选自阿里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(md)语法,一直认为,md文件阅读起来对开发人员更加友好,简洁+清晰是我们喜欢的。

    三 分支代码修改完成,提交时,commit 与issue关联,或者在申请RP/MR时,关联对应的issue id,一般情况下,在团队开发时,为了保证代码的健壮与安全,我们会将分支代码推到远程,通过合并请求的方式,由多人进行分别审核,都审核通过,你的代码才能合并到目标分支,在合并请求描述时,可以添加issue的关联关系,如fix #1,表示修复的issue is为1的bug。

    四 分支审核之后,合并到目标分支后,对应的issue将会自动关闭

    五 commit合并后,关联issue自动全闭的关键字总结,如果觉得关键字太多,你就使用1种也是可以的,如closes #1,表示合并到目标分支后,自动关闭issue 1。

    • 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
  • 相关阅读:
    Himall验证帮助类判断当前时间是否在指定的时间段内、是否是数值(包括整数和小数)
    趣睡科技上市:市值41亿募资缩水超4亿 小米顺为是股东
    (MySQL)SQL语句练习题【老杜34题】
    ctfhub -afr -1 2 3
    SpringBoot+Vue项目宠物猫店管理系统的设计与实现
    数组——有序数组的平方
    力扣LeatCode算法题第三题-无重复字符的最长子串
    MySQL 路由配置以及部署方式
    C++ Reference: Standard C++ Library reference: C Library: cwchar: ungetwc
    MySQL-DML【数据操作语言】(图码结合)
  • 原文地址:https://www.cnblogs.com/lori/p/18003029