Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.http://www.aspiresoftware.in
Self-Hosted (SH) Web-based Git
Repository Managers
By Dhaval Shah
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
List of self hosted git server
☞GitLab
☞BitBucket
☞GitHub Enterprise
☞GoGits
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitLab...
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitLab Features
☞ GitLab Inc. is a company based on the GitLab open-source
project. GitLab is an application to code, test, and deploy code
together. It provides Git repository management with fine grained
access controls, code reviews, issue tracking, activity feeds, wikis,
and continuous integration.
☞ GitLab Inc. has 4 product offerings:
GitLab Community Edition (CE)
GitLab Enterprise Edition (EE) - paid, self hosted
application, comes with additional features and support
GitLab.com - free SaaS for public and private repositories,
support can be purchased
GitHost.io - a private single-tenant GitLab instance run by
us
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitLab Pros
Pros
☞ Snippets to share code
☞ Integrated issue tracking
☞ Includes many features, including CI (Continuous Integration)
☞ Super-powered search using ElasticSearch
☞ Mention JIRA ticket from GitLab
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitLab Cons
Cons
☞ Most of the features available in enterprise edition which is not
available for free
☞ Heavy resource usage
☞ Search functionality is not that refined
☞ Hard to configure
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Bitbucket...
(Stash)
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Bitbucket Features
☞ Bitbucket Server (previously Stash) is a self-hosted git repository
manager which can be used as an alternative to Github.
☞ It's built with a focus on enterprise teams by the same company
that built Bitbucket.
☞ Get unlimited private and public repositories with Bitbucket.
Bitbucket Cloud is free for small teams of 5.
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Bitbucket Pros
Pros
☞ Issue tracking with JIRA and integration with Bamboo and
HipChat
☞ Backed by an established company with amazing support
☞ Stash is backed and developed by Atlassian, an established and
world-class software company with a great history of customer
support.
☞ Stash is cross-platform
☞ Stash has a great permission system
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Bitbucket Pros
Pros
☞ Global Permissions: Decide who can log in, who the system
admin is, etc…
☞ Project Permissions: Read, write, and admin permissions at the
project level.
☞ Repository Permissions: Read, write, and admin permissions on a
repository level.
☞ Stash installation is very easy and there are install wizards for
Windows, Linux and OSX. There are also a lot of tutorials and
guides that cover the installation process and more.
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitLab Cons
Cons
☞ It doesn't have the ability to edit files from the browser
☞ In Stash you can't edit files in the Web UI out of the box. You have
to buy an additional plugin for that.
☞ Paid
☞ No code search functionality
☞ Git only
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitHub
Enterprise...
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitHub Enterprise Features
☞ GitHub Enterprise was built to bring the power of GitHub to self-
hosted solutions for Git repositories.
☞ GitHub Enterprise is the on-premises version of GitHub.com. With
flexible deployment options, centralized permissions, and
hundreds of integrations, you and your team can enjoy the best
parts of working with GitHub without compromising on the
features your business needs.
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitHub Enterprise Pros
Pros
☞ Code search
☞ Inline editing
☞ @mentions
☞ Image diffs
☞ Fork permissions
☞ Amazon AWS Hosting Options
☞ Backups
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
GitHub Enterprise Cons
Cons
☞ Expensive
GitHub Enterprise may be quite expensive for small
startups on a budget. It was built for enterprises and large
companies to use.
☞ Update cycle lags behind public GitHub
GitHub Enterprise may be quite expensive for small
startups on a budget. It was built for enterprises and large
companies to use.
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Gogs...
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Gogs Features
☞ Easy to install - Simply run the binary for your platform. Or ship
Gogs with Docker or Vagrant, or get it packaged.
☞ Cross-platform - Gogs runs anywhere Go can compile for:
Windows, Mac, Linux, ARM, etc.
☞ Lightweight - Gogs has low minimal requirements and can run on
an inexpensive Raspberry Pi. Some users even run Gogs
instances on their NAS devices.
☞ Open Source and free
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Gogs Pros
Pros
☞ Gogs has excellent performance and efficiency
The fact that it's written in Go means that it has excellent
performance even with little resources (less RAM for
example).
☞ Simple installation
The installation process is very simple, just a binary file that
needs to be run on the directory where the user wants to
install Gogs
☞ Cross-platform compatibility
☞ Easy configurable
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Gogs Cons
Cons
☞ Does not provide feature of code search, code-snippet
☞ In code review does not providing commenting for commit
☞ No File history feature
☞ Pull request support from same repo only not from forked repo
☞ Not supported @mention in comment or issue
☞ Hard to configure for port 80
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Which one
should I use...
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Which one should I use ?
If you have large enterprise and you need all feature from git hook to
continuous integration then you should try gitlab or github or
bitbucket.
☞ Github provides feature of setting up in amazon aws from which
you can easily scale up the server.
☞ GitHub provides installation to various cloud providers or a VM
that you can run on your own servers.
☞ Unlike GitHub, GitLab can be installed on virtually any
hardware/OS/CM combination.
☞ In Gitlab pricing for the enterprise edition is reasonable (several
times lower than with GitHub) and support most of the features
provided by github
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Problems faced during Gogs setup ?
Proxy pass
Since other application are already running on port 80 it require me good
amount of time to configure Gogs server for port 80 (I preferred with
apache virtualhost and added proxypass like as below).
ProxyPreserveHost On
ProxyPass /
ProxyPassReverse /
Mailing for git hook on each push
Since configuration can’t be changed directly for git repo after setup, it
require us to configure directly in git post-receive hook inline to setup
mailing list and mail header, body.
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.
Why should one use Gogs as Self Hosted Git server ?
☞ Gogs is very lightweight and easy to setup, cross-platform and
configurable.
☞ You don’t need whole day to setup Git Server, just download
binary file, run it and it’s done !!
☞ It’s providing all basic features for Git Server, free and open
source.
☞ Easy setup and upgradable.
Thank You
Copyrights © 2015. Aspire Software Solutions. All Rights Reserved. Aspire Confidential.http://www.aspiresoftware.in