不确定你所问的问题是否有一个范围内的答案,但以下是一些希望有用的信息/想法。
除此之外,我不知道你提到的(所有)工具,但这是次要的。
当然,您想要的是保持开发过程(如您所描述的)的活力。正如你所说,它看起来是这样的:
local dev (start cycle 1) > testing/staging (cycle 1) > production (cycle 1)
这当然不是一个线性过程,而是一个循环。因为在您将工作部署到生产环境之后,您肯定会根据您达到的最新状态开发新功能,这同样适用于更新-核心或插件。
因此,如果您开始新的开发周期,应该是这样的:
local dev (production from cycle 1, start cycle 2) > testing/staging (cycle 2) > production (cycle 2)
这样,您的代码在每一步都处于同一阶段,您的版本控制完好无损,
but 当然,这只是一份关于如何做到这一点的简化草案。
毕竟,您希望为新特性/更新创建git分支,并总体上利用版本控制的可能性。所以,再插入一次,因为这些可能性,周期不是一维的,只是考虑并行开发分支等等。
总之,归根结底就是要选择合适的git workflow, 结合您的同步和备份需要。由于git分支模型或工作流概念显然超出了本文的范围,我就不谈了。看看周围,有很多关于git工作流模型的信息。
注意:这应该是一个评论,但我不知道如何保持简短。