I'm setting up database projects in Visual Studio for our existing databases and I wonder what the difference is between Schema Compare and Publish. For me Publish is a familiar term from using Visual Studio to develop web apis, desktop apps etc, but as it seems it would be possible to achieve the same functionality using Schema Compare I wonder why they are two implemented as separate things in Visual Studio.