La parte de gitweb:
Tienes que instalar el paquete gitweb con sudo apt-get install gitweb
Luego tienes que editar el archivo de configuración apache gitweb
$EDITOR /etc/apache2/conf.d/gitweb
cambia la línea Alias /gitweb /usr/share/gitweb
a
Alias /git /usr/share/gitweb
abre el /etc/gitweb.conf
archivo:
tienes que cambiar la línea
$projectroot ".."
a
$projectroot "/code/git"
y cambiar cualquier otra línea que contiene /gitweb
a /git
, por ejemplo,
$stylesheet = "/gitweb/gitweb.css";
a
$stylesheet = "/git/gitweb.css";
luego vuelva a cargar su servidor web Apache con sudo /etc/init.d/apache2 horse-reload
La parte GIT en sí misma:
Recomiendo encarecidamente el uso de gitosis ( http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way )
RECUERDE si el uso Gitosis la línea $projectroot
de /etc/gitweb.conf
tiene que ser
$projectroot = "/home/git/repositories/";
Puede encontrar información detallada sobre cómo configurar la gitosis en
http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way
describir la configuración completa de la gitosis es demasiado largo para esta respuesta.
Si necesitas más ayuda sobre la gitosis déjame un comentario
Para solucionar los problemas de permisos de Apache, podría ser necesario hacer:
adduser www-data git
chgrp -R git /home/git/repositories
Esto es lo que hice para configurar
gitweb
Ubuntu 14.04, con SSL y autenticación de usuarios del sistemapwauth
. Por defecto,gitweb
utiliza a/etc/gitweb.conf
, que esperagit
proyectos en/var/lib/git
.Así que intenté poner mis
git
repositorios aquí, así que en este ejemplo no tenemos que cambiar/etc/gitweb.conf
, mi/var/lib/git
aspecto es el siguiente:Entonces, al lado de tus repositorios, también necesitarías un enlace simbólico
/usr/share/gitweb/gitweb.cgi
en este directorio ...Luego, puede usar lo siguiente como
/etc/apache2/sites-available/gitw-ssl.conf
:Y finalmente puedes hacer:
Después de esto,
gitweb
debería estar disponible enhttps://localhost/gitweb/
(por ejemplohttps://localhost/gitweb/?p=testrepo.git;a=summary
); y debería poder clonar (en caso de un certificado SSL autofirmado) con:fuente