SVN 和 Visual Studio 数据库项目?

Posted

技术标签:

【中文标题】SVN 和 Visual Studio 数据库项目?【英文标题】:SVN and Visual Studio Database Projects? 【发布时间】:2011-01-18 17:51:51 【问题描述】:

Visual Studio 数据库项目的 SVN 中包含哪些文件或文件类型的约定是什么(相当于忽略 *.suo、*.csproj.user 等)?

我刚刚开始使用数据库项目来管理 Web 应用程序的数据端,我注意到用于部署到数据库的连接字符串存储在 .dbproj 文件中,否则它是通用的,并且需要在SVN中。但在理想情况下,此设置应针对每个开发人员,以便他们可以更新并按下 Deploy 并更新其开发数据库中的所有内容。如果此设置在用户选项文件中,则可以仅对必要的 sql 文件进行版本控制。

另外,当您更改目标部署数据库时,它会在 sql/debug 或 sql/release 中创建一堆文件:$databasename_Database.sqlcmdvars、$databasename_Database.sqldeployment、$databasename_Database.sqlsettings、$databasename_Script.PostDeployment.sql、和 $databasename_Script.PreDeployment.sql。和上面一样的逻辑,不就是我的开发数据库特有的吗?

另一种方法是将项目指向共享测试数据库服务器,但 that's been said to be a bad idea。

【问题讨论】:

【参考方案1】:

用 msbuild 属性替换硬编码的数据库名称,例如- $(DatabaseName) 您可以将默认值添加到 dbproj 中,但也可以通过 msbuild 提供不同的值,例如

msbuild your.dbproj /p:DatabaseName=YourDBServer

【讨论】:

以上是关于SVN 和 Visual Studio 数据库项目?的主要内容,如果未能解决你的问题,请参考以下文章

在Visual Studio中使用SVN进行源代码管理

Visual Studio 2019 安装 Ankh SVN

使用 Visual Studio 2008 和 SVN 在 C++ 中进行自动版本控制

Visual Studio 代码管理器svn插件下载

无法在 Visual Studio 中键入

在Visual Studio中恢复已删除的项目