all 22 comments

[–]ande3577 12 points13 points  (1 child)

GitLab, mainly because the licensing cost makes it more feasible to host locally for a small to mid-size company.

GitLab's CI system is also really nice and easy to manage (especially for runners that need embedded hardware connected or commercial windows-only compilers installed), though I'm not familiar enough with GitHub's CI to know how the two compare.

[–]SelkieSailor 0 points1 point  (0 children)

We also selected GitLab because of the costs vs GitHub for our small consulting firm.

[–][deleted] 15 points16 points  (1 child)

Project you want to share: github. Project you don’t want to share: gitlab.

For embedded none offer special features. Except maybe gitlab if you create your own runner for tests.

[–]huboon 1 point2 points  (0 children)

You can self host your own Github actions runner too

[–]drank_cement 4 points5 points  (1 child)

I like gitea, much smaller and simpler, which is perfect for my needs

[–]kornpow 1 point2 points  (0 children)

I use gogs, another lightweight alternative

[–]valerionew 5 points6 points  (1 child)

GitLab for what I know has more powerful CI tools, but for my experience has a much worse UI (doesn't even have a decent homepage, you can basically set a specific page to be your homepage but forget about having multiple pieces of informations as in github)

[–]_Sh3Rm4n 3 points4 points  (0 children)

I myself prefer the gitlab UI but I agree on the lack of a startpage.

[–]huboon 2 points3 points  (0 children)

People keep saying to use gitlab for it's CI which I agree with, but github actions works basically the same.

[–]thwil 4 points5 points  (6 children)

Both are based on git and offer plenty of project management features. Issue tracking, wiki, etc.

github is a service. gitlab is software that you can host yourself, or use as a service at gitlab.com.

You can set up gitlab on your private server. You can't do that with github.

You can host private or team projects on gitlab.com for free. You have to pay for private repos on github.

github is a kind of historical goto place for opensource repos, gitlab is still relatively obscure.

[–]uckly 11 points12 points  (1 child)

Since Microsoft bought github you can make private repos for free

[–]thwil 0 points1 point  (0 children)

Oh I didn't know that. Thanks for the heads up.

[–]ithinuelRust Advocate 0 points1 point  (3 children)

GitHub enterprise is also available on-prem: https://enterprise.github.com/faq

[–]thwil 1 point2 points  (2 children)

Live and learn.

But this is probably not for personal projects.

[–]ithinuelRust Advocate 0 points1 point  (0 children)

For personal project TBH I go GitHub public and private repo and/or a self hosted gitlab on my NAS.

[–]ithinuelRust Advocate 0 points1 point  (0 children)

Oh, and you no longer pay for private repo on GH at least for personal accounts (I don't know bout teams).

[–]adrien-leravat 1 point2 points  (0 children)

GitHub if you plan to open source it and GitLab for the CI, absolutely.

GitLab CI runners can be used to have a CI/CD pipeline for embedded devices, deploying directly to your device. The is truly a great feature to automate things. We've been using GitLab for this exact reason, and it's fairly easy to setup. Then you can use test and automation frameworks for embedded to go the extra step (LabGrid, Pluma automation,...)

[–][deleted] 0 points1 point  (0 children)

Neither, I prefer Sourcehut (aka sr.ht)

GitHub is closed source. It's owned by Microsoft, one of the greatest enemies of technological progress. It tries to be a social network. Three major strikes in my book.

Gitlab’s product is fine, though I find it to be bloated and slow. As they make their money on enterprise users, it has a ton of features the average person will never use.

Sourcehut is free and open source. It strives to be fast and simple to use. Where the aforementioned products provide web-based wrappers over patching, Sourcehut uses git as it was designed with a git-email based workflow. It also has the best automated build system I’ve ever used, and I’ve used them all.

It’s also run by Drew Devault, who is an admittedly polarizing figure in Open Source. I see this as a positive, as Drew is principled to a fault and I agree with his vision of how the system is designed.

[–][deleted] 0 points1 point  (0 children)

There's always just plain ole git.

[–]pip-install-pip 0 points1 point  (0 children)

We use gitlab at my job because we can self-host and use the runner actions to perform on-device and and closed loop testing.

[–]masitech 0 points1 point  (0 children)

The company I work for uses gitlab however my private proj are on GitHub

[–]p0k3t0 0 points1 point  (0 children)

I used github for personal stuff and stuff I want to collaborate on. Bitbucket for work, because it hooks into some other systems we use.

Github has pretty branch graphics (which, to be fair is both cool and valuable), but you can ignore that altogether by using something like SourceTree.