Fet*_*che 1 command-line redgate sqlcompare
使用SQL Compare 10,我创建了一个.scp文件,它将本地数据库(在本地构建服务器上)与Source控件中的内容进行比较(TFS通过redgate SQL Source Control)
使用GUI列出了许多差异.
从命令行运行.scp文件时,根本不会列出任何差异. - "所选对象相同或在比较中未选择任何对象"
命令行是
"C:\Program Files (x86)\Red Gate\SQL Compare 10\sqlcompare.exe" /project:"C:\Users\CIUser\Documents\SQL Compare\SharedProjects\MyDBName v MyDBName (Head).scp" /scriptfile:deploy_MyDBName.sql /include:identical /force
Run Code Online (Sandbox Code Playgroud)
NB
The /include:/identical switch means the compare will not report an error if no changes are detected
The /force switch forces an overwrite of the sql script, rather than causing an error
Run Code Online (Sandbox Code Playgroud)
好吧,解决了这个问题,虽然对我来说似乎有点迟钝,至少可以说.
在保存项目文件之前(或者至少在从命令行运行它之前),您需要:
a)你必须运行比较 - 但是...比较需要发现一些差异
b)由于它已经发现了一些差异,当显示结果时,在标题行中,您需要检查2"对象名称"列之间的复选框,然后
c)保存您的项目.
虽然项目文件是文本/ XML文件,但是执行上述步骤会在文件中添加一些加密的guff,这似乎使它工作 - 即它不是简单地将其中一个xml值更改为True,而是False.
希望这有助于某人 ...肯定有更好的方法来解决这个问题......