Every time I do an Azure DevOps talk, I get someone asking me about migrating from GitHub to Azure DevOps. Every time, I have to ask “Why do you want to migrate from GitHub to Azure DevOps?” Why would you choose between Azure DevOps and GitHub? Or better yet – do you have to choose between them? Let’s look at how they compare and the tooling available.
Let’s look at some of their features side-by-side.
|Project management||Azure Boards||About project boards – GitHub Docs|
|Source control||Azure Repos||GitHub Repositories|
|Package management||Azure Artifacts||GitHub Packages|
|Build and release management||Azure Pipelines||GitHub Actions|
I initially had a feature for testing, but to be fair, the automated and manual tests capabilities for Azure DevOps requires specific subscriptions and GitHub’s documentation includes notes for automated code tests but nothing on manual tests. Since those features don’t line up directly, they are not called out in the table above.
Azure + GitHub = ❤️
If you find yourself using Azure resources while keeping your code in GitHub, don’t see that as a reason to migrate to Azure DevOps. There are many points of GitHub integration to work with Azure, including:
- Azure Boards + GitHub
- Azure Policy + GitHub
- Deploy Azure resources using Bicep files or Azure Resource Manager templates.
- Deploy to Azure hosting platforms such as Azure App Service, Azure Functions, Azure Container Instances, and Azure Kubernetes Service.
- Deploy to Azure databases including Azure SQL, Azure MySQL, and Azure Database for PostgreSQL.
When you’re automating Azure activities, be sure to check the GitHub Marketplace for Azure actions.
For more tips on working with GitHub Actions for Azure, be sure to check out this Introduction to GitHub Actions for Azure.
Some people may base their platform choice based on the product roadmaps. These can help you out:
So which do I choose?
I am not here to recommend one platform over another. However, I think I have given you enough links to get you started on that decision process.
- If you’re already using a lot of features in one but want to switch, why do you want to switch?
- Does the platform you’re looking to move to happen to have most of the features you need?
- If starting new, does the platform have most of the features you need?
What about the demo generator?
There were questions about the Azure DevOps Generator I used for the Tailwind Traders demo. If you want to look at sample cases and potential use cases for Azure DevOps, check out this tool. Learn more here: Get started creating and populating demo Azure DevOps Services projects.