Tarantino 数据库持续集成 (CI) 的替代方案?

发布于 2024-10-24 12:11:57 字数 313 浏览 1 评论 0原文

我们目前正在使用 VincentVega(现已纳入 Tarantino)作为我们的数据库 CI。我们将 CruiseControl.Net 用于我们的 Web 应用程序(使用 TFS 的 C#)。

VincentVega 的表现相对较好,因为它非常明确,并且同样能很好地处理创建和更新(同时保留现有数据)两种场景。我正在考虑升级到 Tarantino,但我想知道是否有人可以建议我应该考虑的一些替代方案?不幸的是,像 SQL Compare 这样“自动”生成增量脚本的工具是不可能的,因为我们的数据库是高度规范化的,有超过 500 个表。

谢谢

埃里克·塔拉索夫

We're currently using VincentVega (now rolled into Tarantino) for our database CI. We're using CruiseControl.Net for our web app (C# using TFS).

VincentVega has worked out relatively well since it's very explicity and handles the two scenarios of create and update (while preserving existing data) equally well. I'm looking into upgrading to Tarantino, but I'd like to know if anyone might suggest some alternatives I should look into? Tools like SQL Compare that "automagically" produce delta scripts are out of the question, unfortunately, since our database is highly normalized with over 500 tables.

Thanks

Eric Tarasoff

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

谁许谁一生繁华 2024-10-31 12:11:58

我认为发布另一个答案可能会很有趣,因为 Redgate 现在有一个新产品 ReadyRoll,满足您的关键问题。

  • “它 [SQL Compare] 只是没有正确地组合同步脚本”

是的,比较工具有时会使脚本出错。通常并不是脚本不起作用,而是它没有以所需的方式应用更改。 ReadyRoll 的两全其美的方法在底层使用 SQL Compare 来创建每个迁移脚本,但最重要的是它允许开发人员随后自定义脚本。

  • “RoundHousE 和类似的工具已经在类似于我们现在正在做的模型中运行”,

ReadyRoll 的方法与 RoundHousE 一样,基于迁移,通过运行一系列连续的脚本来管理升级过程。该工具的构建是为了认识到许多开发团队更喜欢这种方式。

  • “选择 RoundHouseE 的最后一个原因:Chuck Norris”

在这一点上我将不得不承认失败......

I think it might be of interest to post another answer since Redgate now has a new offering, ReadyRoll, that satisfies your key concerns.

  • "it [SQL Compare] just doesn't put together a synch script correctly"

Yes, diffing tools can sometimes get the script wrong. Often it's not that the script doesn't work, but it doesn't apply the change in the desired way. ReadyRoll's best-of-both-worlds approach uses SQL Compare under the hood to create each migration script, but crucially it allows the developer to customize the script afterwards.

  • "RoundHousE and tools like it already operate in a model similar to what we're doing now"

ReadyRoll's approach is, like RoundHousE, migrations-based, managing the upgrade process by running a series of consecutive scripts. This tool was built in recognition that many development teams prefer working this way.

  • "One last reason for choosing RoundHousE: Chuck Norris"

I will have to concede defeat on this point...

萌︼了一个春 2024-10-31 12:11:57

还有另一个项目可能值得 Rob Reynolds 关注; RoundHouse

http://code.google.com/p/roundhouse/

维基百科位于 https://github.com/chucknorris/roundhouse/wiki

There is also another project which may be worth looking at by Rob Reynolds; RoundHousE

http://code.google.com/p/roundhouse/

The wiki is at https://github.com/chucknorris/roundhouse/wiki

╄→承喏 2024-10-31 12:11:57

Paul Stovell 和朋友有一个类似的工具,称为 DbUp。

Tarantino 和 DbUp 之间的一个显着区别是,虽然 Tarantino 通常是从构建脚本(如 Nant 或 msbuild)调用的,但 DbUp 具有您在应用程序中使用的 .NET 类。如果脚本没有按计划进行,这可能会允许更好的后备处理。

http://code.google.com/p/dbup/

这是 DbUp 的原始公告来自保罗·斯托维尔的博客:
http://www.paulstovell.com/dbup

There's a similar tool by Paul Stovell and friends called DbUp.

One notable difference between Tarantino and DbUp is that while Tarantino is typically called from a build script (like Nant or msbuild), DbUp has .NET classes you use within your application. This potentially allows for better fallback handling in case a script doesn't go as planned.

http://code.google.com/p/dbup/

Here's the original announcement of DbUp from Paul Stovell's blog:
http://www.paulstovell.com/dbup

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文