Soft Serve is a git server for the command line. You can see the maintainers’ version here, with ssh:

It looks like this:

Benefits

The setup takes no time, with very few steps - just give it a few variables in /etc/soft, start the service, and start pushing.

Once you’ve given it your admin ssh keys, you can push repositories without setting them up beforehand. Just enter the repository, and do:

Everything can be performed from the command line, so I managed to mirror a full gitea instance with a little bash script.

The underlying structure lets you see the inner workings very clearly.

Disadvantages

Using git-lfs requires a few more setup steps.

If you want automatic user sign-up, you’ll have to add it yourself. Of course, if you can access everyone’s ssh keys, it’s easy enough to add.

And of course, as this is cli-only, that’ll put some people off. That said, for most projects this might help with quality control.