我们可以使用GIT作为sql management studio的源代码控制吗?
答案 0 :(得分:15)
用于SSMS中的数据库源控制
代理SVN - SCC Subversion插件。 http://www.zeusedit.com/agent/ssms/ms_ssms.html
或
http://www.red-gate.com/products/sql-development/sql-source-control/
答案 1 :(得分:8)
我发现ApexSQL有一个本机支持Git作为源控制系统的工具。它作为SSMS加载项提供,并提供了一个向导,您可以使用该向导将数据库对象与源控制系统进行映射。要做到这一点:
<protocol>://<hostname>:<portnumber>/<Git server name>/<repository>
(参见下面的示例):
本文中提供了更详细的分步说明: http://knowledgebase.apexsql.com/link-database-source-control-system-2/
答案 2 :(得分:7)
尝试sql-source-control
,这是一个免费的开源CLI,用于将SQL引入Git等源代码管理系统。
答案 3 :(得分:5)
Microsoft已发布SQL Operations Studio。它是一个在Windows,macOS和Linux上运行的免费工具,用于管理SQL Server,Azure SQL数据库和Azure SQL数据仓库;无论他们在哪里跑步。它附带native GIT support。
答案 4 :(得分:3)
您可以将Git Bash添加为外部工具(工具|外部工具...):
&
指定热键)C:\windows\SysWOW64\cmd.exe
(32位命令shell)/c ""C:\path\to\Git\bin\sh.exe" --login -i"
Finding the path where Git is installed on a Windows system $(ItemDir)
答案 5 :(得分:2)
还没有,但是如果你去http://redgate.uservoice.com/forums/39019-sql-source-control/suggestions/537681-add-git-support投票给redgate添加对git的支持,它可能会在下一个版本中添加。是的我知道它是商业产品,但有些产品足以支付费用!
答案 6 :(得分:2)
Red Gate SQL Source Control已更新,包括Git和Mercurial支持(以及Perforce和TFS)。预先警告他们的DVCS集成不是与其SVN产品相关的100%功能完整,因为SSMS内部不支持查看对象历史等基本功能。如果像SQL Compare这样的其他Red Gate工具是您工作流程的一部分,那么这可能是一个交易破坏者。
我们的解决方法是安装TortoiseGit或GitExtensions并导航到磁盘上的存储库以深入了解详细信息。它有效,但有点笨重。
答案 7 :(得分:1)
由于SSMS(或多或少)是Visual Studio的自定义版本,因此您可以使用适用于VS的解决方案:
或者,从一开始就在Visual Studio中管理数据库源代码,而不是在SSMS中。这样(至少在VS2010中)你有数据库项目,集成部署和单元测试等。或者继续使用SSMS并在准备好时从外部工具检查你的代码(当然不太方便)。
但这取决于你正在做什么:SSMS是一个DBA工具,VS是一个开发人员工具。无论哪种方式,您应该使用某种形式的源代码控制,但从问题的确切地说,您需要确定哪种文件版本。
答案 8 :(得分:1)
VersionSQL是一个SSMS源代码控制插件,我的设计重量轻,易于使用。在“对象资源管理器”面板中,只需右键单击数据库或对象,然后单击“提交”。 VersionSQL将以一个整齐有序的文件夹结构将其编写到Git / SVN。
上查看答案 9 :(得分:-3)
围绕这个问题已经有很多答案你可能想看一下,但简而言之....
版本控制的本质是存储原始文件,然后存储增量,提交的原始文件与后续更改之间的差异(确定,这使得它可能比它更简单),然后管理版本编号并提供工具来提取您需要的任何特定修订。这也允许您比较以前的修订和回滚(等等)
RDBMS由模式和数据组成,这些模式和数据会发生变化,并且在数据的情况下可能会频繁更改,因此,即使您使用VCS,您还可以进行哪些比较以进行恢复,这有何帮助?假设您有一个实时系统,那么恢复到早期版本会丢失临时存储的所有数据,虽然我从未尝试过,但我怀疑它可能会破坏RDBMS的一般完整性。
更好的解决方案是使用为该RDBMS构建的备份应用程序,MySQLdump在MySQL的情况下说,它可以生成数据和数据结构的快照,并将其存储在安全的地方。
可以定期安排转储,您可以执行主/从数据库(或其他策略)等操作,以便您可以动态备份实时生产数据库,而不会影响性能