I'm developing an Azure SQL Database, and I'm using Git in Azure Devops.
For now, I'm dumping the schema into a text file and putting this under version control.
However, is there maybe a built-in way to put all schema changes under version control?
As Dan mentioned in a comment, you can use Visual Studio after you have installed SQL Server Data Tools:
SQL Server Data Tools - Microsoft
This will allow you to create a database project within Visual Studio giving you visibility of objects such as tables and views in a structured manner.
Or you can reverse engineer a database into Visual Studio, which would be more suitable for you given your Azure SQL Database is up and running:
Reverse Engineer Database - MS SQL Tips
Once you have your project in Visual Studio, you can then add to your git repo within Azure Devops. Which I'm assuming you know how to do given you have performed that action with the text files?
From here, the world is your oyster, you can create build and release pipelines within Azure DevOps or the good old fashioned route of Publishing from Visual Studio covered briefly here from Stackoverflow.
You can also use a tool like RedGate Source Control. Create a repository on Azure DevOps put the database project there, create your own branch. Clone the database to your local computer, then create a local blank database on your local SQL Server instance.
Now link the database with RedGate Source Control, get the latest changes, and then start making changes on your local computer. From there you can commit your own changes. The tool will help share with other the changes and will help you dealing with conflicts.
Here you will find an example.
Working on an open-source solution to tackle just this. Try AzureDbUp - It supports Azure SQL, Azure DevOps, and Azure AD. Have developers commit sql migration scripts into the repo then build a release pipeline that executes them.
