
Gogs
A simple, self-hosted Git service you run on your own server.
- Stars
- 47.9k
- Forks
- 5.1k
- Licence
- MIT
- Language
- Go
- Last update
- 5 days ago
- Type
- App
What it is
Gogs is a web application that lets you host your own Git repositories, similar in spirit to GitHub, on a server you control. It includes features like issues, pull requests, a wiki, and user management. It is written in Go and is designed to be lightweight enough to run on small machines such as a Raspberry Pi.
- Host private repositories for a small team on a low-cost server
- Mirror and migrate repositories from other code hosts
- Run issues, pull requests, and wiki pages for internal projects
- Receive webhooks to Slack, Discord, or Dingtalk when repositories change
Great for
- Small teams that want a private Git server on their own hardware
- Hobbyists running a home server or Raspberry Pi
- People who want to avoid hosting code on a third-party platform
- Teams that want to use SQLite, MySQL, or PostgreSQL as the backend
Not ideal for
- Users who need a fully managed hosted service, since you must install and maintain it yourself
- Large organizations with very large teams, because the README only gives baseline sizing for teamwork and says to add CPU as teams grow
- Anyone needing a complete GitHub API replacement, since the README describes API support only as experimental
How to get it
- 1
See the README
Clone the repository
git clone https://github.com/gogs/gogs.git - 2
Run it
- Follow the official installation guide at gogs.io/getting-started/installation
- Choose a database backend (SQLite, MySQL, MariaDB, or PostgreSQL)
- Start the Gogs service and open its web interface in a browser
- Create an admin account and your first repository
- 3
Get the most out of it
- Use SSH, HTTP, or HTTPS to access repositories, as listed in the features
- Enable webhooks to Slack, Discord, or Dingtalk for notifications
- Configure authentication via SMTP, LDAP, reverse proxy, or GitHub with 2FA
- Customize HTML templates and static files if you need a branded look
Downloads
Strengths
- Designed to be simple to set up, with a single binary distribution across many platforms
- Low resource needs, per the README's hardware section
- Supports several databases and multiple login methods, including LDAP and GitHub
Trade-offs
- Experimental API support, according to the README
- Installation is delegated to an external guide, so the README alone gives little setup detail
- Browser support and some details are referenced to other documentation rather than stated here
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| gogs (this) | 47.9k | App | intermediate | 5 days ago | Small teams that want a private Git server on their own hardware |
| gitea | 58.8k | App | intermediate | 4 days ago | Teams that want to host their own code instead of using a public cloud service |
| usql | 10.2k | CLI | beginner | 4 days ago | Developers who use several different databases and want one tool for all of them |
| dokku | 32.2k | App | intermediate | 4 days ago | Developers who want Heroku-style deployment on a server they control |
| dockge | 24.7k | App | beginner | 14 days ago | People who run Docker Compose stacks on a home server or small Linux machine |
| knex | 20.3k | Library | intermediate | 4 months ago | Node.js developers who need to talk to a SQL database from application code |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.