Difference between revisions of "Git"
(→Git en gitweb initialiseren) |
(→Nieuwe git-repo aanmaken) |
||
Line 45: | Line 45: | ||
</pre> | </pre> | ||
Vervolgens kan je voor iedere user die bij die git-repo moet kunnen de regel *repo*/.git *owner*+<owner-email> in het bestandje user@AESKWADRAAT zetten. | Vervolgens kan je voor iedere user die bij die git-repo moet kunnen de regel *repo*/.git *owner*+<owner-email> in het bestandje user@AESKWADRAAT zetten. | ||
+ | |||
+ | Misschien is het ook handig om de ownership naar de juiste user en groep te zetten. |
Revision as of 23:43, 17 April 2013
Git en gitweb initialiseren
Installeer als eerste git en gitweb en de benodigde mod_auth_kerb voor htaccess:
yum install git-core gitweb mod_auth_kerb
Zet vervolgens de kerberos-authenticatie erbij in /etc/httpd/conf.d/git.conf:
<Location /git> Options Indexes FollowSymLinks Includes ExecCGI AuthType Kerberos AuthName "Kerberos Login" KrbMethodNegotiate On KrbMethodK5Passwd On KrbAuthRealms AESKWADRAAT Krb5KeyTab /etc/httpd/krb5.keytab Require valid-user </Location>
Je moet er natuurlijk ook wel voor zorgen dat de juiste kerberos-keytab-file aanwezig is. Maak daarvoor op de ipaserver de http-service voor de gitserver aan en haal dan de keytab binnen op de gitserver:
ipa-getkeytab -s <ipa-server> -p HTTP/<gitserver> -k /etc/httpd/krb5.keytab chown apache:apache /etc/httpd/krb5.keytab
en restart de httpd
service httpd restart
Als laatste moet er in de gitweb.conf bijgezet worden dat de lijst van repos afhangt van de user die inlogt op gitweb. Zet het volgende erbij in /etc/gitweb.conf:
use CGI; my $user = $ENV{'REMOTE_USER'}; our $projects_list = "/var/lib/git/" . "$user"; our $strict_export = true;
Dit zegt dat er in de map /var/lib/git per user een bestandje 'user@AESKWADRAAT' is waar de repos van die user in staan.
Nieuwe git-repo aanmaken
Maak een directory aan voor je repo in /var/lib/git/ en initialiseer een nieuwe gitrepo hierin:
cd /var/lib/git mkdir *repo* cp *repo* git init
Vervolgens kan je voor iedere user die bij die git-repo moet kunnen de regel *repo*/.git *owner*+<owner-email> in het bestandje user@AESKWADRAAT zetten.
Misschien is het ook handig om de ownership naar de juiste user en groep te zetten.