Git hosting solutions comparison
Notes:
- To contribute to this document, just e-mail us to in@rocketgit.com or clone the RocketGit repository, make changes and push them.
- Move mouse over features field for more information.
Features / ProductRocketGitGitlab CEGitHubgitolitePagure.ioGogs.io
Legal
LicenseAffero GPLv3+MITProprietaryGPLv2GPLv2 or laterMIT
Developers keep copyright when contributingYesNon/aYesYes?
GNU Ethical Repository Criteria Evaluations (see 3)A (-A4, +A+0, +A+1, +A+2, +A+5)CF?A??
 
Features
Easy installationYesYesYes?YesYesYes
SELinux policyYesNo?not needed??
Distro friendlyYesNo (see 1)No (see 1)YesYes?Yes?
Bug trackerYesYesYesNoYes?
CLI commands (SSH)YesNo????
APIYesYesYes?Yes?
Anonymous pushYesNoNoNo?No?
Languages available (i18n)1??1?14
IPv6YesYes?YesYes?
Submodules??????
Usable with lynxYesYesYesn/aYesYes
2fa (two-factor authentication)YesYesYes (see 2)YesNo?
Web HooksYesYesYesNoYesYes
Web Hooks - provide client certsYesNoNon/a?No
Web Hooks - authenticate server (CA cert)YesNoNon/a?No
OpenSSH AuthorizedKeysCommandYesYesYes?No?
OpenSSH filter by key type and bitsYesNo?NoNoYes
Detailed info about the SSH keysYesNo?NoNo?
LDAP user authenticationNoYes?NoNoYes
LDAP groupsNo?????
PAM user authenticationNo????Yes
Git LFSNoYesYesYesNoNo
Lock repo with a messageYes?????
Continuous integrationYesYes????
Code reviewNoYesYes???
WikiNoYesYesn/a??
System resource friendly?YesNo?Yes??
 
Rights
Path controlYesNo?YesYes?
Refs controlYesYes??Yes?
IP controlYesNo??Yes??
 
Product distribution/evaluation
KVM image available?Yes??not needed??
VirtualBox image available?Yes??not needed??
VMWare image available?Yes??not needed??
Docker container available?Yes?????
 
Details
LanguagePHPRuby+PerlRubyPerlPythonGo
Number of code lines38k360k??80k520k
CacheCustomRedismemcachen/aRedisCustom/Redis/memcache
DatabasePostgreSQLMy/PostgresSQLMySQL?MySQL/MariaDB/PostgreSQL/SQLitePostgreSQL/MySQL/SQLite
Webservernginx/apacheapache/nginx??n/aapache/nginx/lighttpd
Size of the rpm package400KiB287MiB?170KiB??
Page speed: Mobile (speed/user experience)90/9632/9067/96n/a54/6732/72
Page speed: Desktop96?81n/a6426
CSS size9KiB250KiB560KiBn/a130KiB520KiB
JS size0KiB1170KiB670KiBn/a450KiB350KiB
 
Notes
1) It has a not standard package manager; upgrading distro does not update the git software (pip, gem etc.). Or is a big archive including packages already found in the distribution.
2) Seems is not really secure: if key is leaking, the attacker can push.
3) Repo criteria by GNU: https://www.gnu.org/software/repo-criteria.html