I’m looking to self-host a GitHub alt on a cheap Linux VPS for personal use. Any rec?
How cheap are we talking? OneDev is awesome but is recommended to have 2gb ram - the more repos and larger code bases might eventually need more ram.
Memory vCPUs Transfer SSD 1 GiB 1 vCPU 1,000 GiB 25 GiB
If you just want a remote to push your code to without issues, projects, pull requests and such you can use git only: https://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server
This is actually a good idea! No need to over engineer stuff 😅
Yup K.I.S.S
@khoi@slrpnk.net if you’re okay with that I suggest you check out this https://gitolite.com/gitolite/overview.html.
In short “Gitolite allows you to setup git hosting on a central server, with fine-grained access control and many more powerful features.”. It doesn’t require some background daemon running, uses the server’s SSH and it is a simple script that deals with access control so you can easily manage your users and repositories. The “cherry on top” is that you control your git “server” using a git repository :P
Gogs and Gitea are very similiar, Gitea is a fork of Gogs with a bit more features as I understand it.
However when I tried to get Gitea working personally a year and a half ago, it had some rough issues with redirect looping onto itself infinitely, could never get it to work.
On the other hand Gogs didn’t have this issue, and was much more painless to stand up, so it’s what I use now.
I setup Gogs once like 6 years ago or something lol, I remember it being pretty easy and it is nice. Although if Gitea is more actively maintained then it’s probably worth giving that a shot first.
Used gogs, it was… fine. Made the jump to Gitea and it’s just amazing. Not that it does anything really different, but you can tell it’s much more polished. Gogs just felt like a CS student’s final project, Gitea is something I could use at work.
They genuinely looked identical to me.
Either way, gogs dies what I need it to, git server for backing up my code and super basic git web Hooks to trigger my build server.
Couldn’t ask for anything more.
I’ve spun up Gitea in my homelab as well as at work and don’t recall being difficult so perhaps they fixed whatever was causing your issue
If you don’t need the web gui stuff (and you shouldn’t for personal use) you can set up a git server using gitolite. Very easy to manage
And if you really want even more barebones, you can just do
git init --bare
into a directory on your VPS, and thengit clone user@your.ip.here:path/to/the/directory
and use git as you would normally!and you shouldn’t for personal use
Nonsense. I like to see how my CI is going.
Most of the Web GUIs are designed for interaction/collaboration between multiple people, and are massive overkill for one person. Tools like gitk/git gui are more than enough to see what’s going on graphically.
If you want to install all the other stuff, that’s completely up to you, but a lot of people don’t seem to realise that the Web GUI stuff and command line are completely separate things, and you don’t have to install both of them.
i run forgejo on my shitty vps and for the amount of features it has it is surprisingly lightweight, i love it so much
Stagit and cgit, just the very best! If you want a github like UI, there is Gogs.
Gitea.
Isn’t this a spin-off of gogs?
I still need to convert.
Skip it and go right to forgejo : it’s the current tip of the iceberg.
The majority of maintainers stayed with Gitea. Forgejo is not the tip, they still pull the majority of their commit from gitea directly.
Maybe, depends on the migration path. Gitea proved impossible to migrate to.
Could you not just push a git repo?
It was even easier. I’m over on forgejo, works.
Sure, but then I’d have to remove gogs 1st after exporting everything. It’s not a lot of data, but loads of repos. For me there was no reason to migrate (yet).
Apparently. When I wound up choosing Gitea for my own purposes, I don’t recall even learning about Gogs somehow.
I picked gogs before I knew about the gitea fork. (Maybe even before the fork)
I use gitea, it works fine.
Strong recommend for Forgejo. It’s a community fork of gitea that’s actively maintained by the community and a great open source nonprofit.
It’s actually a drop in replacement for gitea if you are using that now.
Super lightweight. Super snappy, and it supports GitHub Actions style CI/CD.
Big +1 for Forgejo, also they are actively working on implementing Federation, i.e. in the future Forgejo servers will be able to exchange information as a federated network, just like good old Lemmy 😊 If you want to try the toolchain (Forgejo+Woodpecker CI), it’s what Codeberg.org (run by the German nonprofit organization of the same name) offers freely.
what’s the benefits of being federated for code?
This will allow you to browse & contribute to projects hosted on other instances without having an account there. Imagine using the GitHub search to find a project on Gitlab, then opening an issue there without ever even leaving GitHub. The protocol is called ForgeFed.
The actions are amazing, and I was also able to integrate them with tailscale so I can build and deploy everything within my network automatically.
I run it in a vps with 1cpu and 2gb ram along several other services.
@khoi@slrpnk.net probably others already suggested, gitea is as lightweight as you can go with a nice interface and features
I use gitea and it’s great, I would recommand having a good backup système if you care about your repos though
I haven’t installed it yet, but I’m going to try out Gitness for this: https://docs.gitness.com/
I have now installed it and I like it.
if their service runs as poorly as their website I’ll give that a pass
Gitlab at least used to be the open source release of GitHub. I ran it in my lab for a while but stopped as I was using github anyway. It was easy to setup and maintain but it used a lot of resources. I ran it on a vm, there is likely a docker build as well.
GitLab and GitHub were always developed separately by completely different people and have never shared code.
I wouldn’t self host any git unless it was unimportant. Too easy to dick up disks.
Well thats what backups are for, but may be start with a mirror or with unimportant stuff for at least a year ;) Also proprietary service can delete your data, too. This happens especially when you are using the generous free tier and they decide to make more money. See Evernote, Gitlab, Heroku…
🙄 if I had a dime for every time I’ve heard an engineer say I got this for backups…
Well guess what. They say that cause they’re damn right.
Whatever you say lol
You wouldn’t host anything important without doing it properly.
That should be obvious, man.
Not even remotely close to true. Services are mostly half assed. Doing them correctly is time consuming and expensive.
For personal use https://forgejo.org/ or https://gogs.io/ should be enough
I came here to say this
I recommend against gogs. It’s missing lots of features that I expected and I ended up switching to gitea anyways. Gitea works well for everything I need and forgejo is a fork of gitea that I might switch to in the future.