Sql server Redgate比较SDK源代码管理源代码数据库

Sql server Redgate比较SDK源代码管理源代码数据库,sql-server,tfs,redgate,dac,Sql Server,Tfs,Redgate,Dac,我目前正在使用Redgate SQL Comparison SDK,并已将其设置为非常不同的2个数据库 我现在想做的是能够将sqlproj与源代码管理和目标数据库区分开来 我曾尝试使用tfs/vsts SDK提取sql文件,但没有任何效果 有没有办法将源代码管理中的sqlproj构建到dacpac中,然后将其作为源数据库拉入,或者直接将sqlproj作为源数据库拉入 编辑: 我的最终目标是能够基本上比较源代码管理中的数据库版本和跨许多不同环境运行的数据库版本,并为差异创建delpoyment脚本

我目前正在使用Redgate SQL Comparison SDK,并已将其设置为非常不同的2个数据库

我现在想做的是能够将sqlproj与源代码管理和目标数据库区分开来

我曾尝试使用tfs/vsts SDK提取sql文件,但没有任何效果

有没有办法将源代码管理中的sqlproj构建到dacpac中,然后将其作为源数据库拉入,或者直接将sqlproj作为源数据库拉入

编辑:

我的最终目标是能够基本上比较源代码管理中的数据库版本和跨许多不同环境运行的数据库版本,并为差异创建delpoyment脚本

我还有两个Redgate工具可以实现这一点(SQL compare&SQL Source),但这些工具只能安装在1台(最多2台)设备上,我的困难在于使用Amazon RDS(在VPC之外无法访问端点),我无法将这些工具的一个中心安装连接到我的所有环境,我不能为每个环境购买额外的许可证。因此,我试图使用比较SDK来尝试“滚动我自己的”中间立场


非常感谢,

您是在自动化构建/ci系统的环境中这样做的吗?您提到了VST,所以通常的工作方式是,这已经从源代码管理中提取了文件。一旦文件位于构建代理的工作文件夹中,您应该能够将SDK(或SQL Compare命令行)指向该位置。请记住,sql proj不是红门工具的官方支持数据源,尽管它在许多情况下都可以工作


如果您可以编辑您的问题,并提供一些您试图解决的更高级别问题的背景信息,以防我们(我为Redgate工作)可以推荐一套更适合的工具或技术,那就太好了。

您是在自动化构建/ci系统的背景下这样做的吗?您提到了VST,所以通常的工作方式是,这已经从源代码管理中提取了文件。一旦文件位于构建代理的工作文件夹中,您应该能够将SDK(或SQL Compare命令行)指向该位置。请记住,sql proj不是红门工具的官方支持数据源,尽管它在许多情况下都可以工作


如果您可以编辑您的问题,并提供一些您试图解决的更高级别问题的背景信息,以防我们(我为Redgate工作)可以推荐一套更适合的工具或技术,那就太好了。

我也在Redgate工作,请通过电子邮件发送给我dlm@red-gate.com如果您想详细了解您的具体问题,我会给我们打电话

一般来说,Redgate建议您在下面所做的工作的过程是在版本控制中保留希望所有数据库都具有的规范化模式。您可以让每个使用该产品的开发人员在开发SSM时从SSM中引入更改,或者在sprint结束时使用该产品添加一个版本

然后,您可以将我们的工具与CI服务器结合使用,为目标服务器自动创建差异报告和同步脚本。DLM Automation是一组PowerShell Commandlet和插件,用于常见CI服务器,如TeamCity、Jenkins、VSTS、TFS等。您还可以使用SQL Compare Pro命令行


如果您的整个团队都有我们的SQL Toolbelt产品,那么您就可以在构建/发布代理上安装任意次数的DLM自动化工具,因此您不需要每个环境都有额外的许可证。

我也在Redgate工作,请通过电子邮件发送给我dlm@red-gate.com如果您想详细了解您的具体问题,我会给我们打电话

一般来说,Redgate建议您在下面所做的工作的过程是在版本控制中保留希望所有数据库都具有的规范化模式。您可以让每个使用该产品的开发人员在开发SSM时从SSM中引入更改,或者在sprint结束时使用该产品添加一个版本

然后,您可以将我们的工具与CI服务器结合使用,为目标服务器自动创建差异报告和同步脚本。DLM Automation是一组PowerShell Commandlet和插件,用于常见CI服务器,如TeamCity、Jenkins、VSTS、TFS等。您还可以使用SQL Compare Pro命令行


如果您的整个团队都有我们的SQL Toolbelt产品,那么您可以在构建/发布代理上安装任意次数的DLM自动化工具,这样您就不需要为每个环境提供额外的许可证。

您好,David,谢谢您回复我,我已经为我的问题添加了一些额外的信息。谢谢您提供的详细信息。听起来Redgate的DLM自动化资源可以解决您的问题。这比尝试在每个构建代理上安装客户端工具更干净。我的同事(也是DLM自动化的产品经理)Jon已经发布了一个关于这个问题的答案。嗨,David,谢谢你回复我,我已经在我的问题中添加了一些额外的信息。谢谢你提供的详细信息。听起来Redgate的DLM自动化资源可以解决您的问题。这比尝试在每个构建代理上安装客户端工具更干净。我的同事(也是DLM自动化的产品经理)Jon对此发表了一个答案。嗨Jon,谢谢你的回答。我会发送一封电子邮件,询问更多具体问题,但这听起来可能是我需要的方式。嗨,乔恩,谢谢你的回答。我会发送一封电子邮件,提出更具体的问题,但这听起来可能是我需要采取的方式。