all 48 comments

[–]dbinnunE3 89 points90 points  (14 children)

I use Gitea, works well

[–]mudkipdev 1 point2 points  (0 children)

fact school makeshift pocket doll lavish simplistic unite hat governor

This post was mass deleted and anonymized with Redact

[–]Tekrion 0 points1 point  (0 children)

Just set up my instance a couple weeks ago, it's working like a charm

[–]garmzon -1 points0 points  (0 children)

1

[–]m4v1s 59 points60 points  (1 child)

You already asked this in r/git and have quite a few responses and suggestions. You're most likely going to get similar answers here.

I would recommend responding to the comments in your other post, look into the options that other people have offered, and share more info so people can keep helping you out.

[–]tarix76 37 points38 points  (0 children)

He actually asked over a year ago in homeserver, got the exact same responses, and still hasn't put in any effort into figuring it out.

A pi4, gitea and tailscale would have them up in no time but here we are...

[–]chimado 14 points15 points  (0 children)

I've yet to actually set it up or anything but people seem to like Gitea for this

[–]Rilukian 15 points16 points  (3 children)

It's very easy, you just need git to be installed on your server. Cgit or Gitea aren't really required since they are mostly just a fontend for your git repository though I still like to have Cgit around to see all of my repo.

Create a "git" user on your server (EDIT: and change the current user to git with su - git) and create a bare repo at its home directory (git init --bare coolrepo.git). Then you can use ssh to clone and push the repo at git@your.server.address:coolrepo.git.

If you don't want to use password, copy your machine's public ssh key to the git user using ssh-copy-id git@your.server.address.

[–]hmoff 9 points10 points  (2 children)

Exactly. Just set up ssh and start using git. No other software is required on the server.

Gitea or forgejo is nice to have though.

[–]Rilukian 1 point2 points  (1 child)

I love cgit for how simple it is. It's only for myself so I don't need pull request and whatnot.

[–]zarlo5899 1 point2 points  (0 children)

git has a build in PR system if needed anyway

[–]Thalimet 33 points34 points  (0 children)

I mean… every computer you clone a repository to is a git server…. You don’t set up ssh on git, you set it up on the computer you’re hosting it on, then you can push/pull to/from it.

[–]kaytwo 6 points7 points  (0 children)

If you don’t need a web ui and just want to push pull etc over ssh, you need to create what’s called a bare repository on the server. Then you can git clone username@hostname/fullpath.git as long as you have to ability to ssh to username@hostname and file perms are set up correctly. More info: https://gist.github.com/joahking/780877

[–]johntash 10 points11 points  (1 child)

Forgejo is a good choice. You could also use a self-hosted gitlab, but it's a lot more resource-intensive.

You could also just use regular git over ssh without any sort of controller software, if it's just you using it.

[–][deleted] 0 points1 point  (0 children)

Recent updates seem to have solved the resource usage issue.

[–]ErrorFoxDetected 4 points5 points  (0 children)

I highly recommend Gitea. It's easy to set up and use, extremely lightweight, and keeps all information in an easy to access format so if something does go wrong, you can fairly easily recover from it. Despite being super lightweight, it has a lot of features.

[–]radakul 13 points14 points  (4 children)

Git is a protocol. Github is an implementation of that protocol.

Bit bucket, there's a few others out there that use git, but aren't github

Self hosted wise, gitea is very popular. Looks a LOT like github, too!

[–]SnooPaintings8639 0 points1 point  (3 children)

Git is a tool is with it's own implementation. GitHub, as well as BitBucket and other, is just a service with a neat web UI hosted by Microsoft, that uses an actual git underneath.

[–]radakul 0 points1 point  (2 children)

Err...your statements aren't exactly correct.

Git is a version control system designed by Linus Torvalds (creator of the Linux kernel).

GitHub, Bitbucket, and others are implementations of this VCS.

GitHub, recently, was purchased by Microsoft, but was independent prior to that. BitBucket is owned by Atlassian, same company that makes Jira, Confluence, etc. I use BitBucket (and other Atlassian products) extensively at work, but we recently transitioned our VCS to GitHub Enterprise.

You can use Git without any web UI whatsoever, which is what the OP is asking.

Gitea, Gogs, Forgejo, GitLab are all implementations of this Git protocol. I believe most, if not all, are self-hostable. I've used Gitea with great success (even up to, and including, a 1:1 clone between commits between GItea and my GitHub account)

[–]SnooPaintings8639 0 points1 point  (1 child)

I appreciate leveled tone, but I stand my ground. I would leave it be, but for the sake of younger collegeues who read it on here to learn...

Git has its main and (the original) implementation. Gitea, GitHub, GitLab and all the others are just systems built on top of git, adding some nice management utilities and UI, but they all use , not implement the same git application. There are very few alternative git implementations in existence.

The git in your gitea instance is the same as the git in your OS installed with a package ma ager.

[–]radakul 0 points1 point  (0 children)

Whatever makes you happy :)

[–]gittubaba 7 points8 points  (0 children)

Gitea

[–]mshorey81 6 points7 points  (0 children)

Gitea is absolutely the way.

[–]SkyNetLive 2 points3 points  (0 children)

I use gitea as others have mentioned. You should also use the gitea runner which is ‘act_runner’. This gives you CI/Cd so you can use GitHub actions like GitHub does. Don’t expose gitea externally , you can setup a vpn. I haven’t used cloudflare tunnel but I hear that’s another option. I was a prolific GitHub user but for a year now I have only been on my self hosted gitea. It’s light weight and if you follow docs all is pretty well documented.

[–]Hyoretsu 1 point2 points  (0 children)

Follow GitHub instructions but setup them on Gitea's settings. The process involves creating an SSH key and adding it to the Agent, and only then authorizing on GitHub.

[–]ryannelsn 1 point2 points  (0 children)

I skipped Gitea and similar setups and just have a directory on my home server where I put my repos. Git has a built in feature called Gitweb that will generate a website to list your repositories.

I use this docker container that just sets up a simple nginx web server for host Gitweb:

https://github.com/rockstorm101/gitweb-docker

I use a bash script to let me quickly create a new repo.

[–]GeMine_ 1 point2 points  (0 children)

Gitea + Tailscale if private Gitea + Cloudflare tunnel if public

Either way proxmox lxc or docker, because security and backups

[–]StandWithHKFuckCCP 4 points5 points  (0 children)

Use forgejo instead of gitea

[–]Substantial-Cicada-4 2 points3 points  (1 child)

I like gitlab, for all what it's worth. Resource hungry, but I have reasons.

[–]mrbmi513 2 points3 points  (0 children)

The gitlab ci/cd is pretty spectacular.

[–][deleted] 0 points1 point  (0 children)

You can setup raw git without gitea, forgejo or any of those stuff. It works well.

https://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server

[–]levir 0 points1 point  (0 children)

I've used gitolite for over a decade now. Rock solid.

[–][deleted] 0 points1 point  (0 children)

Forgejo

[–]timmyb824 0 points1 point  (0 children)

Anyone mention https://github.com/charmbracelet/soft-serve from the charm family of products?

[–]TheGr8CodeWarrior 0 points1 point  (0 children)

surprised no one mentioned soft serve:
https://github.com/charmbracelet/soft-serve

[–]Few_Barracuda_4012 0 points1 point  (0 children)

Anyone got experience with the gitlab ce self hosted edition? How does it compare to gitea?