What is the easiest way to have a self hosted git server?
-
I’ve been recently dabbling on rust, and I am have been mostly doing that on my laptop.
However, I also have a desktop and once in a while I would like to resume my stuff from the laptop, but without manual file transfers.I know git by design does this, but I would like to use my current docker setup with Ubuntu server to have a very simple git server.
What would be the simplest git server to have in this situation? Keep in mind I am not planning to expose none of this to the internet
-
I’ve been recently dabbling on rust, and I am have been mostly doing that on my laptop.
However, I also have a desktop and once in a while I would like to resume my stuff from the laptop, but without manual file transfers.I know git by design does this, but I would like to use my current docker setup with Ubuntu server to have a very simple git server.
What would be the simplest git server to have in this situation? Keep in mind I am not planning to expose none of this to the internet
Using git is oftentimes a good idea but does not fit your description. Just use syncthing or another cloud thing. You can still use git but without a dedicated berg/tea/hub/lab/bucket server
-
I’ve been recently dabbling on rust, and I am have been mostly doing that on my laptop.
However, I also have a desktop and once in a while I would like to resume my stuff from the laptop, but without manual file transfers.I know git by design does this, but I would like to use my current docker setup with Ubuntu server to have a very simple git server.
What would be the simplest git server to have in this situation? Keep in mind I am not planning to expose none of this to the internet
Check out Gitea. It was pretty easy to set up with docker and they have pretty decent docs.
-
I’ve been recently dabbling on rust, and I am have been mostly doing that on my laptop.
However, I also have a desktop and once in a while I would like to resume my stuff from the laptop, but without manual file transfers.I know git by design does this, but I would like to use my current docker setup with Ubuntu server to have a very simple git server.
What would be the simplest git server to have in this situation? Keep in mind I am not planning to expose none of this to the internet
Many excellent replies. Just want to add https://github.com/charmbracelet/soft-serve as an option
-
Check out Gitea. It was pretty easy to set up with docker and they have pretty decent docs.
gitea has been replaced by forgejo
-
Using git is oftentimes a good idea but does not fit your description. Just use syncthing or another cloud thing. You can still use git but without a dedicated berg/tea/hub/lab/bucket server
Horrible idea. You’ll likely end up syncing a mess of unnecessary, incompatible and conflicting binary build files onto different platforms, you’ll end up with internal file conflicts that are impossible to properly resolve and will destroy your repo, especially if you’re still using git on top of it. Don’t do this. Git has its own synchronization mechanisms for a reason, they are extremely mature and specifically designed for maximum efficiency, safety and correctness for the task at hand, which is managing source code. Millions of people use git for source code every day. It is a solved problem.
Syncthing is literally the WRONG tool for this job. It is a great tool for many situations, but you are using it as a hammer when what you need is a saw.
-
Why is that? The project still seems to be available / updating
-
I think Forgejo is a community-driven fork of Gitea. Gitea development is still active.
-
I’ve been recently dabbling on rust, and I am have been mostly doing that on my laptop.
However, I also have a desktop and once in a while I would like to resume my stuff from the laptop, but without manual file transfers.I know git by design does this, but I would like to use my current docker setup with Ubuntu server to have a very simple git server.
What would be the simplest git server to have in this situation? Keep in mind I am not planning to expose none of this to the internet
I use Forjego, and it's not exposed to the Internet.
-
I’ve been recently dabbling on rust, and I am have been mostly doing that on my laptop.
However, I also have a desktop and once in a while I would like to resume my stuff from the laptop, but without manual file transfers.I know git by design does this, but I would like to use my current docker setup with Ubuntu server to have a very simple git server.
What would be the simplest git server to have in this situation? Keep in mind I am not planning to expose none of this to the internet
- Install Rocky9
- Yum install gitlab-omnibus
- Oh. We’re done.
-
Look at the number of commits
-
Look at the number of commits
Churn != Improvement
-
Horrible idea. You’ll likely end up syncing a mess of unnecessary, incompatible and conflicting binary build files onto different platforms, you’ll end up with internal file conflicts that are impossible to properly resolve and will destroy your repo, especially if you’re still using git on top of it. Don’t do this. Git has its own synchronization mechanisms for a reason, they are extremely mature and specifically designed for maximum efficiency, safety and correctness for the task at hand, which is managing source code. Millions of people use git for source code every day. It is a solved problem.
Syncthing is literally the WRONG tool for this job. It is a great tool for many situations, but you are using it as a hammer when what you need is a saw.
To be fair, if you want to sync your work across two machines, Git is not ideal because well, you must always remember to push, If you don’t push before switching to the other machine, you’re out of luck.
Syncthing has no such problem, because it’s real time.
However, it’s true that you cannot combine Syncthing and Git. There are solutions like https://github.com/tkellogg/dura, but I have not tested it.
There’s some lack of options in this space. For some, it might be nicer to run an online IDE.
…
To add something, I second the “just use Git over ssh without installing any additional server”. An additional variation is using something like Gitolite to add multi-user support to raw Git, if you need to support multiple users and permissions; it’s still lighter than running Forgejo.
-
Many excellent replies. Just want to add https://github.com/charmbracelet/soft-serve as an option
Do you have any experience with it? I am curious about it and wonder how is the usability in its current state. I have not seen any independent review or feedback about it yet.
-
Why is that? The project still seems to be available / updating
it’s been forked Into forgejo a community driven fork if you don’t care that they are community based, they are also implementing federation
-
forgejo is implementing federation and gitea is not https://forgejo.org/compare-to-gitea/ if you dont care that its community based, federation is the only thing i could tell you
-
Do you have any experience with it? I am curious about it and wonder how is the usability in its current state. I have not seen any independent review or feedback about it yet.
Happy to oblige your request stranger.
Softserve is perfectly usable, especially if your needs are more basic (its for you, no need for PRs, etc). The only gotcha is you’ll need a ed55219 key to use it.
It has been stable for me the last few years I’ve known about it. Ive run it as a container of some sort for that entire time. It’s definitely still maturing though, with more features added semi frequently.
I use it for literally everything I want self hosted, which is like 7-8 git repos for different things.
-
Churn != Improvement
Not necessarily
Notice Forgejo is being hosted on Forgejo. The community behind it is much stronger while Gitea is some startup that is desperately trying to be relevant.
-
Do you have any experience with it? I am curious about it and wonder how is the usability in its current state. I have not seen any independent review or feedback about it yet.
I use it for my personal projects and its perfectly usuable. If you want people to contribute you’ll just have to do it the old fashioned email patch way.
You can use RSA keys but it requires a little fiddling. I’ve used them but needed to massage something. Now I just use ed keys.
The SSH ui is perfectly fine. Your repos are stored as bare repos on the server in the configured directory. So they are easily backed up as regular files.
It also supporta LFS.Let me knownif you have any other questions