90dd0657b5
* Add support for federated avatars Fixes #3105 Removes avatar fetching duplication code Adds an "Enable Federated Avatar" checkbox in user settings (defaults to unchecked) Moves avatar settings all in the same form, making local and remote avatars mutually exclusive Renames UploadAvatarForm to AvatarForm as it's not anymore only for uploading * Run gofmt on all modified files * Move Avatar form in its own page * Add go-libravatar dependency to vendor/ dir Hopefully helps with accepting the contribution. See also #3214 * Revert "Add go-libravatar dependency to vendor/ dir" This reverts commit a8cb93ae640bbb90f7d25012fc257bda9fae9b82. * Make federated avatar setting a global configuration Removes the per-user setting * Move avatar handling back to base tool, disable federated avatar in offline mode * Format, handle error * Properly set fallback host * Use unsupported github.com mirror for importing go-libravatar * Remove comment showing life exists outside of github.com ... pity, but contribution would not be accepted otherwise * Use Combo for Get and Post methods over /avatar * FEDERATED_AVATAR -> ENABLE_FEDERATED_AVATAR * Fix persistance of federated avatar lookup checkbox at install time * Federated Avatars -> Enable Federated Avatars * Use len(string) == 0 instead of string == "" * Move import line where it belong See https://github.com/Unknwon/go-code-convention/blob/master/en-US/import_packages.md Pity the import url is still the unofficial one, but oh well... * Save a line (and waste much more expensive time) * Remove redundant parens * Remove an empty line * Remove empty lines * Reorder lines to make diff smaller * Remove another newline Unknwon review got me start a fight against newlines * Move DISABLE_GRAVATAR and ENABLE_FEDERATED_AVATAR after OFFLINE_MODE On re-reading the diff I figured what Unknwon meant here: https://github.com/gogits/gogs/pull/3320/files#r73741106 * Remove newlines that weren't there before my intervention |
||
---|---|---|
.github | ||
cmd | ||
conf | ||
docker | ||
models | ||
modules | ||
packager | ||
public | ||
routers | ||
scripts | ||
templates | ||
.bra.toml | ||
.dockerignore | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.gopmfile | ||
.pkgr.yml | ||
.travis.yml | ||
Dockerfile | ||
Dockerfile.rpi | ||
LICENSE | ||
Makefile | ||
README.md | ||
README_ZH.md | ||
glide.lock | ||
glide.yaml | ||
gogs.go |
README.md
Gogs - Go Git Service
Current tip version: 0.9.65 (see Releases for binary versions)
Web | UI | Preview |
---|---|---|
Important Notes
- YOU MUST READ Contributing Code BEFORE STARTING TO WORK ON A PULL REQUEST.
- 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.
- The demo site try.gogs.io is running under
develop
branch. - If you think there are vulnerabilities in the project, please talk privately to u@gogs.io. Thanks!
- If you're interested in using APIs, we have experimental support with documentation.
- 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, Mac OS X, Windows and ARM.
Overview
- Please see the Documentation for common usages and change log.
- See the Trello Board to follow the develop team.
- Want to try it before doing anything else? Do it online!
- Having trouble? Get help with Troubleshooting or User Forum.
- Want to help with localization? Check out the guide!
Features
- Activity timeline
- SSH and HTTP/HTTPS protocols
- SMTP/LDAP/Reverse proxy authentication
- Reverse proxy with sub-path
- Account/Organization/Repository management
- Repository/Organization webhooks (including Slack)
- Repository Git hooks/deploy keys
- Repository issues, pull requests and wiki
- Add/Remove repository collaborators
- Gravatar and custom source
- Mail service
- Administration panel
- Supports MySQL, PostgreSQL, SQLite3 and TiDB (experimental)
- Multi-language support (18 languages)
System Requirements
- A cheap Raspberry Pi is powerful enough for basic functionality.
- 2 CPU cores and 1GB RAM would be the baseline for teamwork.
Browser Support
- Please see Semantic UI for specific versions of supported browsers.
- The official support minimal size is 1024*768, UI may still looks right in smaller size but no promises and fixes.
Installation
Make sure you install the prerequisites first.
There are 5 ways to install Gogs:
Tutorials
- How To Set Up Gogs on Ubuntu 14.04
- Run your own GitHub-like service with the help of Docker
- Dockerized Gogs git server and alpine postgres in 20 minutes or less
- Host Your Own Private GitHub with Gogs.io
- 使用 Gogs 搭建自己的 Git 服务器 (Chinese)
- 阿里云上 Ubuntu 14.04 64 位安装 Gogs (Chinese)
- Installing Gogs on FreeBSD
- Gogs on Raspberry Pi
- Cloudflare Full SSL with GOGS (Go Git Service) using NGINX
Screencasts
- Instalando Gogs no Ubuntu (Português)
Deploy to Cloud
Software and Service Support
- Drone (CI)
- Fabric8 (DevOps)
- Taiga (Project Management)
- Puppet (IT)
- Kanboard (Project Management)
- BearyChat (Team Communication)
- HiWork (Team Communication)
Product Support
Acknowledgments
- Router and middleware mechanism of Macaron.
- System Monitor Status is inspired by GoBlog.
- Thanks lavachen and Rocker for designing Logo.
- Thanks Crowdin for providing open source translation plan.
- Thanks DigitalOcean for hosting home and demo sites.
- Thanks KeyCDN and QiNiu for providing CDN service.
Contributors
- Ex-team members @lunny, @fuxiaohei and @slene.
- See contributors page for full list of contributors.
- See TRANSLATORS for public list of translators.
License
This project is under the MIT License. See the LICENSE file for the full license text.