Gogs is a painless self-hosted Git service

Joe Chen 00bd6081a5 chore: minor fixup on README (#7866) 5 kuukautta sitten
.github 7adac94f1e Dockerfile: update base image to alpine3.21 and enable trivy scan (#7863) 5 kuukautta sitten
.packager 0b86aa5d29 pkgr: update heroku-buildpack to latest (#5957) 5 vuotta sitten
conf 740eba4f70 session: support TLS for Redis provider (#7860) 5 kuukautta sitten
docker 7adac94f1e Dockerfile: update base image to alpine3.21 and enable trivy scan (#7863) 5 kuukautta sitten
docs 16b185f97d build: remove support of Go 1.18 and 1.19 (#7590) 1 vuosi sitten
internal 9a9388ace2 api: clean file path for updating repo contents (#7859) 5 kuukautta sitten
public f4a78e5cfb chore: update version of mermaid to 10.9.1 (#7760) 1 vuosi sitten
scripts 6f9b63517d fix(systemd script): define RestartSec as 2 (#7733) 1 vuosi sitten
templates e6d4db0b4c Fix spacing if BuildTime is missing. (#7800) 8 kuukautta sitten
.deepsource.toml 2e19f5a3c8 db: add tests for authentication through login sources (#7049) 3 vuotta sitten
.dockerignore d7bda9ac0e build: remove Makefile and update Docker build steps (#6980) 3 vuotta sitten
.editorconfig 015589cdd9 fix(.editorconfig): remove setting end_of_line and make Git track EOL changes on Windows (#7725) 1 vuosi sitten
.gitattributes d8fa08111b chore: fix linguist-vendored with double asterisks (#6563) 4 vuotta sitten
.gitignore 5f34265db6 ci: run database tests against Postgres, MySQL and SQLite (#6996) 3 vuotta sitten
.golangci.yml 9108970e45 mod: bump golang.org/x/crypto from 0.25.0 to 0.26.0 (#7792) 9 kuukautta sitten
.mailmap acf2df3688 mailmap: update replacements 3 vuotta sitten
.pkgr.yml 3616bc03c9 packager: use centos-9 and debian-12 (#7668) 1 vuosi sitten
CHANGELOG.md 5326b4113a chore: update minimum Go version to 1.23.4 (#7865) 5 kuukautta sitten
Dockerfile 7adac94f1e Dockerfile: update base image to alpine3.21 and enable trivy scan (#7863) 5 kuukautta sitten
LICENSE 9f0c571238 Change LICENSE copyright holder name [CI SKIP] 8 vuotta sitten
README.md 00bd6081a5 chore: minor fixup on README (#7866) 5 kuukautta sitten
README_ZH.md cd3f132844 README: update sponsor list (#7661) 1 vuosi sitten
SECURITY.md c5dff8cdad chore: update vulnerability report and patch policy 5 kuukautta sitten
Taskfile.yml 3650b32ec5 chore: rename `internal/db` to `internal/database` (#7665) 1 vuosi sitten
codecov.yml 63cb76106a chore: fix typo in codecov.yml (#7047) 3 vuotta sitten
gen.go fa84482d98 chore: upgrade go-mockgen for 1.22 (#7683) 1 vuosi sitten
go.mod 5326b4113a chore: update minimum Go version to 1.23.4 (#7865) 5 kuukautta sitten
go.sum 7adac94f1e Dockerfile: update base image to alpine3.21 and enable trivy scan (#7863) 5 kuukautta sitten
gogs.go a98968436c chore: bump dev version to 0.14 (#7375) 2 vuotta sitten
mockgen.yaml d9ecdcaef0 all: unwrap `database.UsersStore` interface (#7708) 1 vuosi sitten
trivy.yaml 7adac94f1e Dockerfile: update base image to alpine3.21 and enable trivy scan (#7863) 5 kuukautta sitten

README.md

gogs-brand

GitHub Workflow Status Discord Sourcegraph

简体中文

🔮 Vision

The Gogs (/gɑgz/) project aims to build a simple, stable and extensible self-hosted Git service that can be set up in the most painless way. With Go, this can be done with an independent binary distribution across all platforms that Go supports, including Linux, macOS, Windows and ARM-based systems.

📡 Overview

💌 Features

  • User dashboard, user profile and activity timeline.
  • Access repositories via SSH, HTTP and HTTPS protocols.
  • User, organization and repository management.
  • Repository and organization webhooks, including Slack, Discord and Dingtalk.
  • Repository Git hooks, deploy keys and Git LFS.
  • Repository issues, pull requests, wiki, protected branches and collaboration.
  • Migrate and mirror repositories with wiki from other code hosts.
  • Web editor for quick editing repository files and wiki.
  • Jupyter Notebook and PDF rendering.
  • Authentication via SMTP, LDAP, reverse proxy, GitHub.com and GitHub Enterprise with 2FA.
  • Customize HTML templates, static files and many others.
  • Rich database backend support, including PostgreSQL, MySQL, SQLite3 or any database backend that speaks one of those protocols.
  • Have localization over 31 languages.

💾 Hardware requirements

  • A Raspberry Pi or $5 Digital Ocean Droplet is more than enough to get you started. Some even use 64MB RAM Docker CaaS.
  • 2 CPU cores and 512MB RAM would be the baseline for teamwork.
  • Increase CPU cores when your team size gets significantly larger, memory footprint remains low.

💻 Browser support

  • Please see Semantic UI for specific versions of supported browsers.
  • The smallest resolution officially supported is 1024*768, however the UI may still look right in smaller resolutions, but no promises or fixes.

📜 Installation

Make sure you install the prerequisites first.

There are 6 ways to install Gogs:

Deploy to cloud

Tutorials

📦 Software, service and product support

🙇‍♂️ Acknowledgments

This project is proudly supported by:

Other acknowledgments:

  • Thanks Egon Elbre for designing the original version of the logo.
  • Thanks Crowdin for sponsoring open source translation plan.
  • Thanks MonoVM for sponsoring VPS services.
  • Thanks Buildkite for sponsoring open source CI/CD plan.

👋 Contributors

⚖️ License

This project is under the MIT License. See the LICENSE file for the full license text.