【发布时间】:2017-10-24 15:30:09
【问题描述】:
我们为 Visual Studio 提供了 TFS 源代码控制,它运行良好。现在我们想要对 SQL Server 进行源代码控制。我们项目中的 SQL Server 不是本地的,它在网络下,我们必须通过 IP 连接到它。 RedGate 源代码控制和其他源代码控制与数据库文件夹一起使用,但我们没有来自数据库的任何文件或文件夹。哪种源代码管理适合我们的工作?
【问题讨论】:
标签: sql-server
我们为 Visual Studio 提供了 TFS 源代码控制,它运行良好。现在我们想要对 SQL Server 进行源代码控制。我们项目中的 SQL Server 不是本地的,它在网络下,我们必须通过 IP 连接到它。 RedGate 源代码控制和其他源代码控制与数据库文件夹一起使用,但我们没有来自数据库的任何文件或文件夹。哪种源代码管理适合我们的工作?
【问题讨论】:
标签: sql-server
所有源代码控制系统都将源代码作为文件进行管理,包括数据库源代码。因此,将数据库置于源代码控制之下的第一步是从远程 SQL Server 为您的数据库创建文件(例如 SQL 脚本)。这可以通过将现有物理数据库逆向工程为 SQL 脚本或使用集成工具(如 Red-Gate SQL Source Control、Red-Gate SQL Compare、ApexSQL Source Control、Red-Gate ReadyRoll for Visual Studio、Visual Studio SQL Server Data Tools)来完成(SSDT) Schema Compare 等。然后将文件检入您的源代码控制系统。
特定工具的建议超出了本论坛的范围,但支持源代码控制的数据库工具通常通过服务器名称或 IP 地址连接到本地或远程 SQL Server,并将实时数据库的数据库架构与源代码下的对象进行比较控制。架构差异可以应用于源代码控制的数据库对象、提升到数据库或生成的部署/迁移脚本。究竟如何将数据库工具与源代码控制一起使用取决于您的开发过程。有多种方法,每种方法都有优点和缺点。
我建议您尝试使用您选择的工具和开发过程,以熟悉用于源代码控制集成的过程和相关工具。
【讨论】: