What is Gogs?
Who uses Gogs?
Why developers like Gogs?
Here are some stack decisions, common use cases and reviews by companies and developers who chose Gogs in their tech stack.
Got sick of heavyweight build automation/continuous integration tools like Jenkins, Concourse or Buildbot so I built my own in Go . Gogs repo at https://gogs.blitter.com/Russtopia/bacillus. Well under 1K SLOC, no JVM or containers required.
Go is a lean, powerful language that takes a lot of cognitive load off of the developer with rich data manipulation functions and easy to use HTTP/net libs and concurrency. Combined with gopherjs this old-timey embedded programmer finally found a sensible language for both front- and back-end web development.
I installed Gogs after a few repos I planned to use on GitHub disappeared without explanation, and after Microsoft's acquisition of same, it made me think about the over-centralization of community-developed software. A self-hosted solution that enables easy point-and-click mirroring of important repositories for my projects, both in-house and 3rd-party, ensures I won't be bitten by upstream catastrophes. (So far, Microsoft's stewardship has been fine, but always be prepared). It's also a very nice way to host one's own private repos before they're ready for prime-time on github.
Gogs is written in Go and is easy to install and configure, much more so than GitLab. The only major feature I wish it had is an integrated code review tool, but the web plugin hypothes.is https://stackshare.io/hypothes-is/hypothes-is actually is quite suitable as a code review tool. Set up a group for each code review, and just highlight lines to add comments in pull request pages of Gogs.
- Activity timeline
- SSH/HTTP(S) protocol support
- SMTP/LDAP/reverse proxy authentication support
- Register/delete/rename account
- Create/migrate/mirror/delete/watch/rename/transfer public/private repository
- Repository viewer/release/issue tracker/webhooks
- Add/remove repository collaborators
- Gravatar and cache support
- Mail service(register, issue)
- Administration panel
- Supports MySQL, PostgreSQL and SQLite3
- Social account login(GitHub, Google, QQ, Weibo)