Gogs is a painless self-hosted Git service.

Unknwon 77275a9b31 models: rename Id to ID 1 day ago
.github 742420a5e2 .github: update link to ISSUE_TEMPLATE.md (#5193) 3 months ago
cmd 376a629c9f repo: add changes to repository avatar feature (#5221) 2 months ago
conf 97fb9d283f locale: sync from Crowdin 1 month ago
docker cc95d251d6 docker: add new Dockerfile.docker-ce for docker-ce(>=v17.06) to build docker image (#5322) 4 days ago
models 77275a9b31 models: rename Id to ID 1 day ago
packager 3c0d162961 packager: update files (#4181) 1 year ago
pkg 97fb9d283f locale: sync from Crowdin 1 month ago
public f6bdefe3f3 public: minor fix for PR #5276 1 month ago
routes 1f247cf813 routes: fix open redirect vulnerability #5364 (#5365) 1 week ago
scripts 3c227af508 scripts: add NoNewPrivileges=true to systemd unit file (#5381) 1 day ago
templates de10d9be08 models: fix delete undesired release attachments when delete a comment (#4627) 1 day ago
vendor f4f4edf276 vendor: update github.com/gogs/git-module 1 month ago
.bra.toml 3a6623104f Makefile: correct errors 1 year ago
.codebeatignore aa1fc30b89 Add .mailmap 2 years ago
.codebeatsettings 87954dbfeb Adjust .codebeatsettings 2 years ago
.dockerignore cc95d251d6 docker: add new Dockerfile.docker-ce for docker-ce(>=v17.06) to build docker image (#5322) 4 days ago
.editorconfig 79ba0314e9 milestone: only show issue-related count under issue list (#4316) 1 year ago
.gitattributes f439df4441 locale: sync from Crowdin 3 months ago
.gitignore 41a2632ae7 webhook: minor text change on Discord 1 year ago
.mailmap aa1fc30b89 Add .mailmap 2 years ago
.pkgr.yml 679147cd5d pkgr: update spec to build on Debian 9 (Stretch) (#5083) 5 months ago
.travis.yml 459c8be94f ci: remove Go 1.6.x 2 months ago
Dockerfile cc95d251d6 docker: add new Dockerfile.docker-ce for docker-ce(>=v17.06) to build docker image (#5322) 4 days ago
Dockerfile.aarch64 ce7496aec9 docker: allow setting UID and GID when running a container (#4776) 10 months ago
Dockerfile.aarch64hub ffdd8b3afa docker: enable Automated builds for aarch64 ( ARM64 ) platforms (#5058) 5 months ago
Dockerfile.rpi ce7496aec9 docker: allow setting UID and GID when running a container (#4776) 10 months ago
Dockerfile.rpihub ce7496aec9 docker: allow setting UID and GID when running a container (#4776) 10 months ago
LICENSE 9f0c571238 Change LICENSE copyright holder name [CI SKIP] 2 years ago
Makefile 376a629c9f repo: add changes to repository avatar feature (#5221) 2 months ago
README.md e33d9e77f4 vendor: rename "gogits" to "gogs" 2 months ago
README_ZH.md e33d9e77f4 vendor: rename "gogits" to "gogs" 2 months ago
appveyor.yml 9c3c9a8eb9 Update CI settings 1 year ago
gogs.go de10d9be08 models: fix delete undesired release attachments when delete a comment (#4627) 1 day ago

README.md

Gogs Build Status Build status Crowdin Discord

Current tip version: .VERSION (see Releases for binary versions)
Web UI Preview
Dashboard Repository Editor
Profile Diff Repository Settings
Webhook Organization Admin Dashboard

Important Notes

  1. YOU MUST READ Contributing Code BEFORE STARTING TO WORK ON A PULL REQUEST.
  2. Due to testing purpose, data of try.gogs.io was reset in Jan 28, 2015 and will reset multiple times after. Please do NOT put your important data on the site.
  3. The demo site try.gogs.io is running under develop branch.
  4. If you think there are vulnerabilities in the project, please talk privately to u@gogs.io, and the name you want to be credited as. Thanks!
  5. If you're interested in using APIs, we have experimental support with documentation.
  6. If your team/company is using Gogs and would like to put your logo on our website, contact us by any means.

简体中文

Purpose

The goal of this project is to make the easiest, fastest, and most painless way of setting up a self-hosted Git service. With Go, this can be done with an independent binary distribution across ALL platforms that Go supports, including Linux, macOS, Windows and ARM.

Overview

Features

  • Activity timeline
  • SSH and HTTP/HTTPS protocols
  • SMTP/LDAP/Reverse proxy authentication
  • Reverse proxy with sub-path
  • Account/Organization/Repository management
  • Add/Remove repository collaborators
  • Repository/Organization webhooks (including Slack and Discord)
  • Repository Git hooks/deploy keys
  • Repository issues, pull requests, wiki and protected branches
  • Migrate and mirror repository and its wiki
  • Web editor for repository files and wiki
  • Jupyter Notebook
  • Two-factor authentication
  • Gravatar and Federated avatar with custom source
  • Mail service
  • Administration panel
  • Supports MySQL, PostgreSQL, SQLite3, MSSQL and TiDB (via MySQL protocol)
  • Multi-language support (29 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 5 ways to install Gogs:

Tutorials

Screencasts

Deploy to Cloud

Software and Service Support

Product Support

Acknowledgments

  • Thanks Egon Elbre for designing logo.
  • Thanks Crowdin for sponsoring open source translation plan.
  • Thanks DigitalOcean for sponsoring VPS service.
  • Thanks KeyCDN for sponsoring CDN service.

Contributors

License

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