Comments
10 comments
-
Comparing directly from source control is fairly new and I think the new v10.1 extensions aren't even documented yet.
That said I'll have to double-check this on Tuesday as today is a holiday, but if you want to use source control with SQL Compare, you'll need to use the <scriptsfolderxml> argument to point to the repository. sourcecontrol1 and sourcecontrol2 are scripts folders according to the help (sqlcompare /? /v) so should be pointing to folders on disk as far as I know...
Scriptsfolderxml should point to a file containing the source control repository information.<?xml version="1.0" encoding="utf-16" standalone="yes"?> <ISOCCCompareLocation version="1" type="SvnLocation"> <RepositoryUrl> http://server1.mydomain.local:81/svn/P1/tags/Current/2.14.0.24/DBs/My_DB/ </RepositoryUrl> </ISSOCCompareLocation>
-
It seems scriptsfolderxml is Deprecated method ?
-
I was told migrationsfolderxml was deprecated and replaced by scriptsfolderxml.
-
Just to clarify the "deprecated" issue, since this is all my fault. :oops:
I initially decided to mark /migrationsfolderxml as deprecated because in the use-case I imagined it made more sense for people to use /migrationsfolder. But the feedback suggests that /migrationsfolderxml is actually more useful.
I also accidently marked /scriptfolderxml as deprecated, it is not.
We know this is a complicated part of the commandline and the plan is to improve this area as soon as possible (next month?). -
Is there an example of command line use of argument file com parings Tfs and SQL database? I would like to set up CI between the Tfs and my development database but cannot seem to get the syntax correct for using a Tfs repository as the source1 and a sql database as source2.
Any help is greatly appreciated! -
Would it be possible for you to post your syntax so we can identify what the problem is?
David Atkinson
Red Gate -
I have a file names Testing2.xml which contains the following
<?xml version="1.0"?>
<commandline>
<ISOCCompareLocation version="1" type="TfsLocation">
<RepositoryUrl>
http://server:8080/tfs/legacy/$/Databas ... lopment/QM
</RepositoryUrl>
<ISOCCompareLocation>
</commandline>
calling the
sqlcompare.exe /sourcecontrol1 /revision1:head /scriptsfolderxml:LocationToTesting.xml /database2:QM server2:MySqlDatabaseName
I'm getting an error message that states
Error: Invalid connection database connection parameter: Values cannot be null. Parameter name: scriptFolderLocation
Since I cannot find an example on the syntax, I'm not sure what to change -
Found out that the xml was incorrect and chaged to
<?xml version="1.0" encoding="utf-16" standalone="yes"?>
<ISOCCompareLocation version="1" type="TfsLocation">
<ServerUrl>http://Server:8080/tfs/legacy</ServerUrl>
<SourceControlFolder>$/Databases/E/Development/QM</SourceControlFolder>
</ISOCCompareLocation>
Still getting the same error message though -
What version of SQL Compare do you have installed? Before we spend too long troubleshooting it might be worth trying the patch referenced here.
http://www.red-gate.com/MessageBoard/vi ... hp?t=15335
Once thing also worth trying is adding /verbose in case this provides better information.
David -
Thanks David - After applying that update the command line works now!
Add comment
Please sign in to leave a comment.
"Error: Object reference not set to an instance of an object."
What's wrong with it. Hardly I can find any examples to compare directly from source control.
<?xml version="1.0"?>
<commandline>
<sourcecontrol1>http://server1.mydomain.local:81/svn/P1/tags/Current/2.14.0.24/DBs/My_DB/</sourcecontrol1>
<version1>23431</version1>
<versionusername1>1111</versionusername1>
<versionpassword1>1111</versionpassword1>
<server2>DBserver</server2>
<username2>sa</username2>
<password2>22222</password2>
<database2>My_DB</database2>
<filter>C:\Filters\myfilter.scpf</filter>
</commandline>
Thanks :roll: