Why GitLab?
I've been wanting to write an article on LinkedIn for quite some time. Danny Thomson recently asked why I chose GitLab over GitHub, and I'll take that opportunity to elaborate.
When I moved to git in 2013(?), I wanted a graphical UI for the management of my repos. Also, I needed to create private repos that only me and my clients would have access to. If I remember correctly, that wasn't possible with GitHub back then, but GitLab already offered that.
Today, GitLab has evolved into much more than only a code management tool. If you take a look at GitLabs and GitHubs homepage, they have very different slogans:
"GitLab is a single application for the entire software development lifecycle. From project planning and source code management to CI/CD, monitoring, and security" (source).
"GitHub is a development platform inspired by the way you work. From open source to business, you can host and review code, manage projects, and build software alongside 31 million developers" (source).
For us, GitLab's CI/CD features are a big differentiator, we base part of our processes on the tools that GitLab offers - details can be found in our presentation on release automation. I don't know exactly, but I think that GitHub doesn't offer anything out of the box in that regard.
We currently use GitLab as SaaS (hosted), and we're on one of the paid plans. In the future, we might migrate our repos to a stand-alone installation and maybe even start offering a GitLab hosting service to our customers, but there's still a lot of red tape to work through.
Update: People pointed out that this article could have much more substance. Maybe, just maybe, this might turn out to be part 1 in a series...
An interesting read: https://about.gitlab.com/is-it-any-good/
Thank you for that Jöerg. Interesting to hear from somebody who has made that choice. You did encourage me to do a general Google search and read today on the differences, but an option from someone whose opinion I trust is alway better :-) I have a small amount of my own ( client ) code, I use Git but locally with local backup and I do feel it’s about time I became an adult and moved to one of them. Normally I’m onsite and using customers system.
My question would be how far you take this. To me the CI/CD possibilities are a big plus of Gitlab, but what about the other features like project management or issue tracking? Do you think they can replace existing tools?
Da könnte man aber auch ein bißchen mehr erzählen ;-)