Answer the question
In order to leave comments, you need to log in
What is better for a new project today, GitLab vs GitHub vs bitbucket?
Greetings!
Before starting a new project, I thought about where it is better to keep turnips, GitLab, GitHub or bitbucket, because private repositories are now allowed everywhere and on free plans. Historically used bitbucket because of the private repositories on the free plan. Who is cooler / more comfortable today?
Answer the question
In order to leave comments, you need to log in
Larger companies often use gitlab (handy when a lot of people work on a project), I often meet smaller bitbucket. For personal projects, github will do, but I keep my projects on gitlab, simply because I find it more convenient
I use GitLab, because automatic deployment and running tests when pushing to a particular branch is the most convenient to do. It is also convenient that there is a Registry in which you can store the built Docker images. That is, Dockerhub is not needed. Given that on Dockerhub, if I'm not mistaken, you can store only one private image, and as much as you want in GitLab-registry. You can also build images directly in GitLab.
Upd: "it's most convenient to do" - PERSONALLY TO ME (I'm not a devops, but just a backend developer).
Bitbucket ci is shit, small size git lfs. There are github actions in the github, but they are so-so, cicrle ci, etc. they are cut only for open reps, but there is a cool integration with various third-party services, good review tools, but it only works for free with open reps. Gitlab has good ci, big free lfs, the only negative is poor integration with third-party solutions. In general, if open source, then hithub is best, if private repos, then gitlab, bitbucket shit.
No difference. What are these three products, what are turnips from cloud providers. They do all the basic functionality the same way.
As for automation, it’s a little funny for me to hear about gitlab ci because in normal projects everything is put on normal pipelines - Azure devops, aws code star, as well as everyone’s favorite Jenkins and teamcity.
Choose according to the conditions that you need to start. Moving repositories to another location is a matter of minutes
I just wrote an article a couple of hours ago)
I hope it will be useful GitLab vs GitHub comparison
Definitely Gitlab CI - code, pipelines, docker registry in one place. Runners of various types.
You can use shared, with your own docker images, or add at least your own dev machine to the project, which will become a dedicated runner for a project / group of projects.
It is also a plus with runners, in that they can be assembled for different platforms (Linux / Win), for example, a C # project, or run Selenium tests under IE.
If you work and deploy in kubernates, then when using Rancher 2, there are pipelines there, it connects to the repository through webhooks, and the rancher raises Jenkins, the registry is quite a convenient build and deploy history "quickly"
For my projects I use Google Cloud "Cloud Source Repositories" also for free and privately.
I recently moved from GitHub to Azure DevOps, here you have project management, and role settings for taste and color, CI / CD customizable in 5 minutes, private package repository, symbol server, dark theme, good code highlighting, convenient organization of work with pull request 'ami. In general, happy as an elephant
Of the three, I like GitLab the best. Because of the overall set of features and the active development of the project. Some additional requirements are possible - for example, work on the Atlassian stack (JIRA + Confluence), then you should take a closer look at bitbucket (although in the same GitLab there is quite sane integration with JIRA)
GitHub has historically been better for open-source projects. And still some things work only with him. But if we are talking about private repositories - Gitlab will be more interesting.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question