I'm comparing a single table using the GUI (SVN to DB compare) and I have the following options set:
"Ignore Indexes" = true
"Ignore Constraint Names" = false
"Ignore Check Constraints" = false
In the Results pane, it looks correct: none of the indexes nor the PK are displayed as differences.
In reality, the indexes and PK in SVN are identical to those in the database.
But when I generate the deploy script, the indexes are dropped and the PK isn't touched. When I switch deployment directions, the same thing happens. This behavior seems to be contrary to the options I selected and to the physical state of this table.
The rest of the script is fine.
The only thing I can think that's out of the ordinary is that I've edited this same project a number of times without closing and reopening it. I remapped the table a few times, changed the source and target a few times, switched the deployment direction a few times... Does SQL Compare "cache" stuff or get confused sometimes? I've seen odd behavior like this before that gets cleared up after closing and reopening a project. I haven't posted about it until now, but I'm getting pretty frustrated with it at this point.