The reason behind why I use Azure DevOps for Digital Library project instead of Github, which is the kind of default place to host an open source project, is that, I know Github less than Azure DevOps. I used the latter for more than 5 years at Dealogic. At first, I thought that publushing my project and running it on Github is a great opportunity to know better Github, but I faced a question and I couldn’t find answer for it and I decided to move back everything to Azure DevOps. The case will be described later.
It is not a feature comparion.
I needed version management, build/pipeline, some project management capabilities and a wiki where additional information can be published. Both system can provide these. I already have an Azure DevOps account and my VPS machine is used as build server. I don’t have any special setup requiring special build capabilities, just I already had this machine for other reasons, and running out of free build minutes occured once, so I started using it as build server. It is provided by Contabo.
Azure DevOps builds can be easily connected to a Github repo. A few clicks only.
Every push triggered a build against the given branch. When a build was successful the source code was tagged by build number. This way of tagging resulted a release on Github which was something I didn’t want. I asked on Stackoverflow how it can be disabled, but no answer so far. Documentation doesn’t help at all. No conceptual explanation of Github processes and way of doing things. Since, deleting all releases/tags manually whenever there is a new build is not sustainable, I ditched Github.
Why I ditched Github instantly? Firstly, I already have a solution for the problem, so I wasn’t forced to figure out how Github works in this case. On the other hand, I want to spend my time to work on my project and dealing with infrastructure related questions and, eventually, making a compromise which I don’t want.
Azure DevOps can already have public projects, and authorization is kind of ok.