Difference between revisions of "SAC:Git Service"

From OSGeo
Jump to navigation Jump to search
Line 31: Line 31:
  
 
Repos in ''/home/git/gogs-repositories'' are '''NOT accessible''' via git protocol.
 
Repos in ''/home/git/gogs-repositories'' are '''NOT accessible''' via git protocol.
 +
 +
 +
'''OSGeo.org''''
 +
git.osgeo.org git infrastructure backend comparisons
 +
 +
 +
''Misc Links''
 +
 +
=== '''GitLab''' ===
 +
"You will be running Sidekiq, Unicorn, Nginx, Ruby (plus all its gems)
 +
and then Gitlab itself."
 +
 +
* https://about.gitlab.com/better-than-github/
 +
* https://github.com/WebEntity/Installation-guide-for-GitLab-on-OS-X
 +
* https://github.com/gitlabhq/gitlabhq/blob/8-0-stable/doc/instal/installation.md#advanced-setup-tips
 +
* https://about.gitlab.com/downloads/
 +
 +
 +
=== '''GOGS''' ===
 +
https://gogs.io/
 +
http://jbrodriguez.io/gogs-an-alternative-to-gitlab/
 +
 +
 +
=== '''Github.com''' ===
 +
default
 +
 +
 +
=== '''Kallithea''' ===
 +
https://kallithea-scm.org/
 +
https://en.wikipedia.org/wiki/Kallithea_%28software%29
 +
 +
 +
=== '''cgit''' ===
 +
* https://git.zx2c4.com/cgit/
 +
* https://wiki.archlinux.org/index.php/Cgit#Configuration_of_Cgit
 +
* http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git
 +
* https://git.gnome.org/browse/
 +
* https://anonscm.debian.org/git/
 +
* https://sources.debian.net/stats/
 +
 +
=== '''gitbucket''' - JVM ===
 +
* https://gitbucket.github.io/gitbucket-news/about/
 +
* https://gitbucket.github.io/gitbucket-news/
 +
 +
=== '''gitblit''' - JVM ===
 +
* http://gitblit.com/
 +
 +
=== '''Phabricator + Diffusion''' ===
 +
* https://secure.phabricator.com/book/phabricator/article/installation_guide/
 +
* https://secure.phabricator.com/book/phabricator/article/diffusion/
 +
* https://phabricator.wikimedia.org/T117071#2200208
 +
 +
''twentyafterfour from wikimieda-labs'':
 +
 +
our phabricator accepts ldap logins plus oauth;
 +
phabricator might still be a decent way of managing your repositories. It's essentially the same thing as gitolite but with a lot more automation around account management, key management and hooks...
 +
you have to deal with account management yourself, phabricator integrates all of that into one package (which can still be somewhat automated / integrated with other tools)
 +
 
 +
 +
=== '''gitolite''' ===
 +
''twentyafterfour from wikimieda-labs'':
 +
likely doesn't support LDAP; certainly a lot lighter weight than Phab stack,
 +
if you are comfortable with perl and don't mind doing a bit of integration work
 +
 +
 +
''Wikimedia-devtools says'':
 +
 +
we currently use Gerrit for code review (gerrit.wikimedia.org) and gitblit for git.wikimedia.org.  Things are being migrated to phabricator.wikimedia.org though (Diffusion).  You are in the right channel you can git clone all of our server configs btw. it's a puppet repo and all public. you might also be interested in wikitech.wikimedia.org, our labs environment where you can get free virtual machines to test things
 +
 +
 +
 +
=== '''Apache Allura''' ===
 +
* https://forge-allura.apache.org/docs/getting_started/installation.html#step-by-step-installation
 +
* https://forge-allura.apache.org/p/allura/wiki/Feature%20Comparison/
 +
 +
 +
 +
''Other Links''
 +
* https://wiki.osgeo.org/wiki/SAC
 +
* http://jbrodriguez.io/gogs-an-alternative-to-gitlab/
 +
* https://git.osgeo.org/_gogs_/org/sac/teams/gogs-service-writers
 +
* https://github.com/gogits/go-gogs-client
 +
* https://github.com/Soullivaneuh/trac2gitlab
 +
* https://discuss.gogs.io/t/how-to-manage-collaborators/87
 +
 +
 +
 +
==== Other Backend Sites ====
 +
* http://git.apache.org/ 
 +
''Please contact the infrastructure-dev@apache.org mailing list if you have comments or suggestions regarding this service.''
 +
 +
==== git.osgeo.org ====
 +
  https://git.osgeo.org/_gogs_/explore/repos
 +
 +
 +
 +
 +
==== General Attributes ====
 +
------------------------------------
 +
Implementation Language
 +
License
 +
Resource Usage
 +
 +
 +
 +
==== Common Features ====
 +
------------------------------------
 +
Dashboard & File Browser
 +
Issue Tracking, Milestones & Commit keywords
 +
Organizations support
 +
Wiki
 +
Code Review
 +
GIST
 +
Web Hooks
 +
 +
 +
 +
==== Feature Comparison ====
 +
------------------------------------
 +
login via LDAP           
 +
private repositories     
 +
external issue tracker   
 +
internal issue tracker   
 +
tool to migrate from trac
 +
external wiki           
 +
internal wiki           
 +
organization management 
 +
comment issues via mail 
 +
PostgreSQL backend       
 +
Multilanguage           
 +
Comments on diff lines   
 +
Pull requests           
 +
Webhooks                 
 +
CL                 
 +
tracking of forks

Revision as of 21:33, 12 April 2016

The TracsvnVM machine hosts a few git related experimental services.

Repositories

There are currently git repositories under /var/www/git/repos (served by Apache) and under /home/git/gogs-repositories (served by Gogs).

Apache runs as user www-data and thus user www-data owns the files in /var/www/git/repos.

Gogs runs as user git and thus user git owns the files in /home/git/gogs-repositories.

There are also a bunch of git repositories used for various system configurations, but they are not exposed to public services as such.

Access methods

HTTPS (Read/Write)

Repos in /var/www/git/repos are served via https://git.osgeo.org/git/REPONAME.

Repos in /home/git/gogs-repositories are served via https://git.osgeo.org/_gogs_/REPONAME.

In both cases, LDAP authentication is allowed. For the /git/REPONAME LDAP authentication is _required_, and you need to use the Git protocol access for an anonymous checkout.

In both cases, http access redirects to https.

TODO: write something about gitweb

GIT protocol (Read Only)

Repos in /var/www/git/repos are served via git protocol with git://git.osgeo.org/git/REPONAME

Repos in /home/git/gogs-repositories are NOT accessible via git protocol.


OSGeo.org' git.osgeo.org git infrastructure backend comparisons


Misc Links

GitLab

"You will be running Sidekiq, Unicorn, Nginx, Ruby (plus all its gems) and then Gitlab itself."


GOGS

https://gogs.io/ http://jbrodriguez.io/gogs-an-alternative-to-gitlab/


Github.com

default

Kallithea

https://kallithea-scm.org/ https://en.wikipedia.org/wiki/Kallithea_%28software%29


cgit

gitbucket - JVM

gitblit - JVM

Phabricator + Diffusion

twentyafterfour from wikimieda-labs:

our phabricator accepts ldap logins plus oauth; phabricator might still be a decent way of managing your repositories. It's essentially the same thing as gitolite but with a lot more automation around account management, key management and hooks... you have to deal with account management yourself, phabricator integrates all of that into one package (which can still be somewhat automated / integrated with other tools)


gitolite

twentyafterfour from wikimieda-labs: likely doesn't support LDAP; certainly a lot lighter weight than Phab stack, if you are comfortable with perl and don't mind doing a bit of integration work


Wikimedia-devtools says:

we currently use Gerrit for code review (gerrit.wikimedia.org) and gitblit for git.wikimedia.org. Things are being migrated to phabricator.wikimedia.org though (Diffusion). You are in the right channel you can git clone all of our server configs btw. it's a puppet repo and all public. you might also be interested in wikitech.wikimedia.org, our labs environment where you can get free virtual machines to test things


Apache Allura


Other Links


Other Backend Sites

Please contact the infrastructure-dev@apache.org mailing list if you have comments or suggestions regarding this service.

git.osgeo.org

 https://git.osgeo.org/_gogs_/explore/repos



General Attributes


Implementation Language License Resource Usage


Common Features


Dashboard & File Browser Issue Tracking, Milestones & Commit keywords Organizations support Wiki Code Review GIST Web Hooks


Feature Comparison


login via LDAP private repositories external issue tracker internal issue tracker tool to migrate from trac external wiki internal wiki organization management comment issues via mail PostgreSQL backend Multilanguage Comments on diff lines Pull requests Webhooks CL tracking of forks