gpt4 book ai didi

visual-studio-2015 - 自动化 Visual Studio DB Schema 比较并 checkin GIT

转载 作者:行者123 更新时间:2023-12-04 17:07:51 24 4
gpt4 key购买 nike

我有一个用于 SQL Server DB 的 Visual Studio 2015 DB 项目,我可以在其中进行架构比较/数据比较并手动将项目 checkin Git。我想自动化执行模式/数据比较、生成脚本并将其 checkin Git 的整个过程。有可能这样做吗?如果是这样怎么办?

我可能会做这样的事情吗? Automating Visual Studio with EnvDTE

最佳答案

欢迎来到数据库生命周期管理 (DLM) 的世界。这是一个相当大的话题,我会尽量保持简短。

通常,您应该首先在源代码管理中进行更改,然后从源代码管理部署到您的生产数据库。这使您有机会在将代码部署到生产之前在开发中测试代码。它还确保生产数据库与您测试的版本一致。

有一系列 Microsoft、第三方和开源工具可帮助您编写数据库脚本并将其导入 Git(或任何其他源代码控制系统)。一些最受欢迎的是 SSDT、Redgate SQL Source Control、Redgate ReadyRoll、Flyway、DBup、Liquibase 和 DB Maestro,但还有许多其他的。

这个源代码的打包和部署绝对可以自动化。对于自动化,大多数人使用 TeamCity、TFS/VSTS、Jenkins 和/或 Octopus Deploy 等自动化工具(或工具管道)来打包源代码并(可选)将其部署到一个数据库(或多个数据库)。这可以在每次提交或单击按钮时完成。当然,这一切究竟是如何运作的(以及一切运作得如何)将取决于您使用的工具。

鉴于有如此多的选择,如果不知道您使用哪个数据库源控制工具和哪个用于构建/发布管理的自动化工具或不推荐一个,就不可能提供一个直接的分步解决方案。这里还涉及很多内容,而且比单个 SO 响应中可以讨论的要多得多。

然而,采用数据库源代码控制和自动化发布过程非常有值(value),所以我鼓励你继续前进。从您的问题中可以清楚地看出您想要改进您的流程。 :-)

您可能最好先查看以下其中一项(或查找我上面提到的任何其他名称):

  • Automating with SSDT (Microsoft) <- Phil Factor 的博客文章
  • Redgate ReadyRoll (第三方)
  • FlyWay (开源)

  • 另外,您似乎有审计问题。跟踪直接在生产中发生的更改,例如,当人们在不通过源代码控制的情况下进行热修复时。关于此主题,还有另一篇很棒的 Phil Factor 博客文章详细介绍了 how to create your own automated process for tracking drift .但是,如果我是你,我会看 Redgate DLM Dashboard .它是第三方工具,但它是免费的,为什么要浪费时间重新发明轮子呢?

    如果您想进一步支持/培训我的公司,DLM 顾问,运行 weekly online workshops (与 Redgate 合作),您将在其中练习为 SQL Server 设置源代码控制、CI 和发布管理流程。

    关于visual-studio-2015 - 自动化 Visual Studio DB Schema 比较并 checkin GIT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39576026/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com