Another “Differences in Linux” question :)
I often wonder, what exactly is the difference between this services?
I understand, that:
- github.com is a company, where as gitlab and forgejo are (softwares)?
- They all “manage/wrap/interface with” git?
Questions:
- what software does github.com use?
- whats the difference between them (pros/cons)?
- what about self-hosting? Possibilities/Preferences?
As always, thanks beforehand :)
Github: Microsoft code hosting site that feeds all your code through AI training and tries to lock you in through their pull request and related machinery. Once used a motto like “social coding”, but let go of that when they realized Facebook for nerds didn’t sound that great. Software is mostly proprietary besides Git itself.
Gitlab: 1) a Github competitor (gitlab.com, code hosting site with somewhat similar features; 2) the software for that site, huge and bloaty and slow, written with Ruby on Rails. You can self host it if you want, but yecch.
Forgejo: Git front end software, fork of Gitea and/or Gogs. Small and fast and written in Go. Fewer features than Github or Gitlab. If you want to self-host, I’d use this or some variant. Quite easy to install and run.
Gitweb: comes with git, pretty rudimentary but has old school attractiveness at least for me. Really just a browsing interface. No pull requests or anything like that.
Git, just plain Git: if you are self-hosting a project for yourself and maybe a few friends/collaborators, it’s fine to just use git with no web stuff, and push/pull by ssh. You’d manually install account credentials for your friends.
Fossil: amazingly small and fast alternative to all the above (fossil-scm.org) but uses its own VCS (Fossil) that doesn’t interoperate with Git. I think the author said he might convert it over sometime. It’s written in C! Uses sqlite as repo backend instead of the file system like git uses. Has built in wiki, bug tracking, documentation viewer, etc. and used about 2MB of ram last time I tried it, ridiculously small (Gogs used around 40MB and Gitlab uses gigabytes).
Sourceforge (sf.net), very old school code hosting site, not of much relevance any more. They released an old old version of the software a long time ago and that got forked to become Savannah.
Savannah (savannah.gnu.org) hosting site for GNU and related software. Also savannah.nongnu.org for non-GNU stuff in the same spirit. I don’t know the exact criteria for putting stuff on nongnu but I think it’s on a project-approval basis, rather than letting everyone upload whatever they want.
Darcs (darcs.net), another alternative to git, better in some ways, written in Haskell, lost most of its users after a self-inflicted footbullet around 5y ago. There was a hosting site (darcsweb?) for it but that looks to be gone now.
There are a few more of them too, none of much importance these days even though some were interesting.
And it’s used by the SQLite project.