Understanding Differences in using SQL Compare VS SQL Source Control to compare against repository.
Hello,
I'd like to better understand the difference between the behavior of SQL Compare vs SQL Source Control when it comes to comparing a database's current schema with the schema as it exists in source control. I'm fairly new to using source control and RedGate's products.
Background info:
I have a database which we'll call "Training_DB". This database was originally created based on the schema code present in the MASTER branch of our schema source-controlled repository (GIT). Recently, I created a branch from MASTER which we'll call "HOTFIX-001". I made a few changes to the schema in the Training_DB and used Redgate SQL Source Control to commit those changes to the HOTFIX-001 branch.
Today when I use RedGate SQL Compare, the software notices that compares the HEAD (with currently checked out branch MASTER) to the Training_DB and notices those changes don't exist in HEAD. It also notices 416 other objects which only exist in the DEV branch.
Meanwhile, when I use RedGate SQL Source Control to compare the Training_DB against the MASTER branch, the software reports no objects with changes to be committed. (I'm guessing this is because it recognizes that a commit was already made to a sub-branch of Master? (i.e. HOTFIX-001)
Can anyone help me better understand the difference between the two types of comparisons that are occurring and use cases for using one over the other?
Comments
Thanks