【问题标题】:Semantic commit type when remove something删除某些内容时的语义提交类型
【发布时间】:2018-06-12 23:56:10
【问题描述】:

当我删除一个功能时,最好使用哪种语义提交类型:feat、refactor 或其他?

【问题讨论】:

    标签: commit git-commit


    【解决方案1】:

    你应该使用refactor,

    • 壮举:为代码库引入了一项新功能
    • 修复:修补代码库中的错误
    • 重构:既不修复错误也不添加功能的代码更改

    可以参考angular/CONTRIBUTING Commit Message Guidelines

    【讨论】:

      【解决方案2】:

      根据定义,它是refactor,因为:

      重构:既不修复错误也不添加功能的代码更改

      删除功能肯定是代码更改, 而且它既不修复错误也不添加功能。

      但是,人们通常假设重构往往不会引入重大更改。并且删除一个特性往往会破坏 API,因为从 API 中删除了一个特性,这会破坏依赖于该特性的所有现有系统。

      其他类型呢?一个特征本身的缺失可以被认为是一个特征。例如,如果有人不喜欢密码登录的想法(每次登录都输入密码很烦人),那么他们可能会认为没有密码登录的功能是一种功能。因此,删除一个特征可以被认为是添加一个新特征。同时,如果一个特性本身的缺失可以被认为是一个特性,那么该特性的存在可能被认为是一个错误。所以删除一个特性可能被认为是修复一个错误。因此删除一个特性是feat 和fix。

      或者,我们可以假装问题不存在。一个设计良好的库不应该有不需要的特性。并且由于其他库和应用程序可能依赖于这个特性,所以永远不应该删除特性。但这一理想原则并不适用于所有图书馆。

      所以我的建议是给这种类型的提交一个新名称。

      【讨论】:

        【解决方案3】:

        使用refactor,因为你重构了你的代码。有一个关于Git Commit Msg的参考供你参考

        【讨论】:

        • 虽然理论上这可以回答这个问题,it would be preferable 在这里包含答案的基本部分,并提供链接以供参考。
        猜你喜欢
        • 1970-01-01
        • 2019-01-01
        • 1970-01-01
        • 2015-10-24
        • 1970-01-01
        • 2015-08-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多