GitWeb a Apache

Pro některé své drobné projekty jsem potřeboval veřejný Git repozitář, kde by ke zdrojovým kódům měli přístup i ostatní. Řešení typu Google Code nebo GitHub jsou pro mě moc velký kanón na malého vrabce. Rozhodl jsem se, že některé ze svých repozitářů zveřejním pomocí programu Gitweb.

Instalace programu Gitweb:

apt-get install gitweb

Konfigurace pro Apache2 v souboru /etc/apache2/sites-available/gitweb (na tento soubor je nutné vytvořit symlink v adresáři /etc/apache2/sites-enabled/ a pak restartovat samotný Apache):

<VirtualHost *:443>
  ServerName git.posvic.cz
  DocumentRoot /home/ftpuser/posvic_cz/ssl_only/git.posvic.cz

  SSLEngine on
  SSLCertificateFile /etc/apache2/ssl/posvic.cz.crt
  SSLCertificateKeyFile /etc/apache2/ssl/posvic.cz.key

  # V /usr/share/gitweb jsou po instalaci Gitwebu
  # potrebne soubory k dispozici
  Alias /gitweb.css /usr/share/gitweb/gitweb.css
  Alias /git-logo.png /usr/share/gitweb/git-logo.png
  Alias /git-favicon.png /usr/share/gitweb/git-favicon.png
  Alias /gitweb.js /usr/share/gitweb/gitweb.js
  ScriptAlias / "/usr/lib/cgi-bin/gitweb.cgi"

  # /git-repo je fyzicky repozitar na pocitaci
  <Directory "/git-repo/">
    Options Indexes FollowSymLinks ExecCGI
    Order allow,deny
    Allow from all
  </Directory>
</VirtualHost>

Pokud v repozitáři existuje více projektů, ale chceme Gitwebu zpřístupnit pouze některé, můžeme vytvořit speciální adresář a do něj umístit symlinky na projekty, které mají být veřejné. V souboru /etc/gitweb je pak nutné změnit proměnnou $projects_list na „/git-repo/gitweb-public“ (včetně uvozovek).

cd /git-repo
mkdir gitweb-public
cd gitweb-public
ln -s ../Communicator.git
Příspěvek byl publikován v rubrice Blog se štítky , a jeho autorem je Petr Pošvic. Můžete si jeho odkaz uložit mezi své oblíbené záložky nebo ho sdílet s přáteli.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *