More flash out of git article.

This commit is contained in:
James Pace 2024-02-10 03:29:52 +00:00
parent 617bb674ff
commit 134f52b118
2 changed files with 58 additions and 1 deletions

View File

@ -0,0 +1,5 @@
---
title: "Draft"
author: "James Pace"
date: "2024/01/01"
---

View File

@ -48,12 +48,64 @@ something from a git repo and do the thing in it.
# Why I chose gitea?
I currently use gitea for as my personal git forge.
Gitea is an open source git forge that heavily borrows from Github's
UI and feature set.
Gitea is extremely light weight, with a number of people online running
it on Raspberry Pi's.
There are two reasons I chose to go with gitea.
1. It is extremely light weight and easy to host.
I was able to get a test version running on my laptop in a container running very quickly.
Once I decided to fully move to it, setting it up on Kubernetes was farily straight forward.
I've not looked at its resource useage on my currenty cluster, but I know pre-Kubernetes
I ran it on a Vm with less than 1Gb of RAM.
2. It has the best community support.
When looking at other tools that integrate with a git forge, I noticed
pretty much all of them natively have support for Github, most of them also
supported self hosted Gitlab, and if they support anything else without using
SSH directly, it's Gitea.
With that being said, I did have some concerns initially and spent a lot of energy looking
for better alternatives.
Particularly:
1. Looking at their public Github, I didn't get the feeling the project was very mature.
It's hard to put a finger on why I felt (and still feel) that, but there is something about
building something that is so unbashedly a clone that feels immature to me.
2. The maintainers are mostly in China, which makes it challenging to ever push at work.
This may come off as Xenophobic, but in the national defense field, our customers sort of are
supposed to be distrustful of other countries, and their requirements flow down.
## Other Options
### Gitlab
### Gitlab Community Edition
One of the options I really wanted to like was Gitlab, particularly their open source
free edition.
As I mentioned earlier, outside of Github, Gitlab has the best community support, and I know
of a number of Open Source projects that aren't on Github that use it.
Unfortuntely, Gitlab is fat, requiring an insane amount of RAM to just idle.
I tried running it on my laptop in a VM with 4Gb of RAM, and with the system idling, and
the only thing happening being me in the admin panel, browsing, the server kept getting OOM'd
killed.
Their docs say the minimum amount of RAM is 4Gb and they are not kidding.
### Onedev
Onedev is an all in Git forge, largely produced by one guy.
I really wanted to like Onedev, and ran it as my primary Git forge before
my last install of Gitea.
Unfortunately, there were just too many little UI bugs that added up so I
couldn't really suggest anyone else use it at like work, and again its
mostly developed by one guy.
It ran great on a VM with very little RAM, though.
### Gerrit
[^dev-stack-definition]: I'm going to use *development stack* in this article to refer to the combination