首页 > 解决方案 > 测试和 README 更新是否应该包含在具有功能的提交中?

问题描述

我有一个库的 git 存储库,我偶尔会为其添加新功能(或者可能更新现有功能,仍然是相同的步骤)。

每当我这样做时,我需要做三件事:

现在我有两个选择:

  1. 将它们全部放在一个提交中:

    • 提交 1:Add FEATURE_NAME + tests + update README.md
  2. 将它们放入三个不同的提交中:

    • 提交 1:Add FEATURE_NAME
    • 提交 2:Add tests for FEATURE_NAME
    • 提交 3:Update README.md for FEATURE_NAME

如果我选择第一个选项,那么如果我认为我的功能不好,那么恢复它会更容易,因为我只需要处理一个提交。

如果我选择第二个选项,它将我的工作分成不同的提交,这是有道理的。

哪个选项更好(或者可能有另一种方式),为什么?

标签: git

解决方案


第一个选项是最常见的选项。
例如“ git 如何改变我的提交行为

与提交行为有什么git revert关系?好吧,我总是想如果我需要撤消某个更改会发生什么,即恢复相应的提交。换句话说,我考虑了我所做的提交的“可恢复性”。

在您的情况下,最好还原所有三个连贯且紧密耦合的更改。

这符合我 7 年前倡导的“代码的连贯状态”


推荐阅读