使用 GIT 进行源代码控制时,何时应在 TDD 中提交更改?

When should changes be committed in TDD when using GIT for source control?

我们正在讨论如何在 SAFE for SCRUM 中使用 TDD 构建我们的开发工作流程。尽管事情结构良好,但我不清楚何时应该在本地提交更改以及何时推送它们。

是否应该每天都这样做/在这段时间内是否可以在本地进行小型提交,是否应该将它们向上推?标准做法是什么?

框架对 ​​"when" 和 "how often" 有何规定?

考虑在 GIT 内使用开发和功能分支。

您的 master 分支应始终包含该软件的工作可部署版本。所有 'development' 都可以在开发分支上完成,只有在准备好发布时才合并到主分支中。

  • 开发人员创建自己的功能分支,并应尽可能经常(定期)查看此分支
  • 当每个功能完成后,将功能分支合并到 Develop
  • 当你有足够的功能时,合并到 Master 中发布

TDD 的使用不应影响您的签入策略。总体目标是始终有一个工作构建。

如前所述,我支持开发和功能分支。 SAFE 要求提交的粒度是每天一次。这意味着服务器端分支。还要求这些提交具有 "working code" 。在 TDD 下,这意味着测试已通过。

所以政策是:

(1) 至少在 sprint 结束前发生合并的开发分支(3w AFAIK)

(2) 相关开发人员在一天结束时提交 工作代码 的功能分支

(3) 每次提交都必须是工作代码

(4)本地每个人都可以保留自己的历史,例如具有 non-working-code 的不同分支,但应该向上推送提交。

点(1)和(2)实际上在外管局是开放的,但(3)和(4)点不是。

请记住,TDD 规定测试应该在代码开发之前编写,但这并不总是可能的,并且在 scrum 下它们可以被重申,但总是在代码进化之前。