首页 > 解决方案 > 二维 git 存储库。开发/测试/实时以及数据库开发中的堆叠变化

问题描述

好的,这是一个问题,看看我是否可以得到一些帮助来解决这个问题。

首先,我们使用 SQL Server 事务脚本,因此它不是通常的编码,因此例如功能切换很难实现(可能吗?)。

好的,我们的问题是这样的:

我们有三个不同的服务器,DEV -> TEST -> PROD。

但!由于它是 SQL,我们可以在 DEV 上实现任务 1,在 Test 和 Prod 上实现任务 2,但不能在 dev 上实现,而在仅测试上实现任务 3。

当然,这也可以改变。所以突然间我们必须在 dev 上添加任务 2 或在 prod 上添加任务 3 等等。

复杂。

这意味着传统的思维方式是将您满意的产品从 DEV 转移到 TEST,当用户对测试感到满意时,将完整的产品转移到 PROD。由于我们在这里讨论的不是“完整产品”,而是应该在不同时间在不同服务器上实施的变更集,我对现有的最佳实践有点不确定?

是否有一些想法可以让我阅读,或者你有一些很好的建议?

谢谢!

标签: sql-servergitversion-control

解决方案


我不确定我是否 100% 关注你,但你所描述的设置正是我的公司如何使用 git 操作他们的 SQL Server 部署。

我们有 3 台服务器,只是使用不同的名称DEV -> STAGE -> PROD

就您的任务而言,我不确定我是否完全理解您的问题。

对我们来说,所有更改都经过所有 3 台服务器,并且始终以相同的顺序进行。

所有工作都在 DEV 服务器上完成,完成后,更改将签入 git。

然后我们的 DBA 将这些更改部署到 STAGE 以进行监控,并让 QA 运行自动化测试和回归测试。

如果一切看起来都不错,那么我们计划一个发布日期,并将更改部署到 PROD。


推荐阅读