HowTo configure Redmine for advanced git integration » History » Version 1
Felix Schäfer, 2010-07-13 12:08
First draft
| 1 | 1 | Felix Schäfer | h1. HowTo configure Redmine for advanced git integration |
|---|---|---|---|
| 2 | |||
| 3 | h2. Scope |
||
| 4 | |||
| 5 | This HowTo explains how to serve git repositories on apache through the http-based "git-smart-http protocol":http://progit.org/2010/03/04/smart-http.html introduced in git 1.6.6. The git-smart-http offers various advantages over ssh or git-based access: you can use redmine access control as-is, no need for extra ssh keys or whatnot, you can secure it through SSL as needed, and there's generally less problems with firewalls and https/https ports than exist with ssh and git ports. git-smart-http also doesn't have some of the drawbacks of its "dumb" predecessor, as it doesn't require any complex DAV setup. |
||
| 6 | |||
| 7 | This HowTo is mainly written from memory and was conducted on a setup which was already serving [[Repositories_access_control_with_apache_mod_dav_svn_and_mod_perl|svn repositories integrated with redmine]], so it might be possible that I forgot some things or take them for granted. This is a wiki page, feel free to correct or amend anything you find lacking :-) |
||
| 8 | |||
| 9 | h2. Prerequisites |
||
| 10 | |||
| 11 | * Apache with mod_perl (access control) |
||
| 12 | * git (version at least 1.6.6) |
||
| 13 | * A way to serve git-smart-http |
||
| 14 | ** mod_cgi (or mod_cgid) if you want to use the stock "git-http-backend":http://www.kernel.org/pub/software/scm/git/docs/git-http-backend.html |
||
| 15 | ** a rack server if you want to use "grack":http://github.com/schacon/grack (basically a rack wrapper around the right git commands) |
||
| 16 | |||
| 17 | You should already have a rack server to run redmine, and that's why I chose grack as the backend and which I will describe in this tutorial. Using the stock git-http-backend should be quite straightforward though. |