Git项目本身(以及Linux项目,AFAIK)的指导方针是每个“逻辑上独立的变更集”一个提交。
这有点模棱两可,但是如果你经常在一个项目上工作,你可能不想每隔几天提交一次,而且你可能不想在每次函数更改后提交-如果你在几个不同的文件中编辑了几个函数,你想尽可能提交所有相关的功能,并提供有用的提交消息。在每次提交中修改的所有代码都应该是相关的,但它肯定可以(并且可能应该)跨多个文件。
你可能要记住的是在代码评审中。如果有人试图决定他们是否应该合并您的工作,如果您在逻辑上包含每个提交并将每个提交彼此分开,那么他们将更容易处理正在引入的工作。这让你(或其他人)可以有效地工作-如果你有三个提交,每个提交都修改了一个函数,但它们都以某种方式耦合在一起-你不能在没有破坏代码库的情况下应用另两个提交-那么它们可能应该被压缩到一个提交。