Esta web utiliza cookies, puedes ver nuestra política de cookies, aquí Si continuas navegando estás aceptándola

Instalación servidor git mediante gitolite


Comenzaremos con la instalación del propio software:

emerge -av dev-vcs/gitolite

Añadimos el usuario git:

useradd -g git -G git -s /sbin/nologin -d /dev/null gitdaemon

La configuración del propio gitolite se realiza mediante un repositorio, en este paso vamos a  añadir la masterkey, esta se utilizará para realizar el clone del repo de config:

su git -s /bin/bash
ssh-keygen -t rsa
cd ~
mkdir -p ~/bin
git clone git://github.com/sitaramc/gitolite
/var/lib/gitolite/gitolite/install -ln ~/bin
mkdir -p /var/lib/gitolite/.gitolite/logs
cd ~/bin
./gitolite setup -pk ../.ssh/MASTERKEY.pub
echo 'export PATH=/var/lib/gitolite/bin:$PATH' >> ~/.bash_profile

Arrancamos el servicio:

exit
mkdir /var/git
/etc/init.d/git-daemon start
rc-update add git-daemon default

Git se apoya sobre ssh para realizar la transferencia de datos, configuramos cualquier peculiaridad de ssh como cambio de puerto....

vi .ssh/config
Host localhost
  HostName localhost
  User git
  Port 22

Clonamos el repositorio de configuración:

git clone git@localhost:gitolite-admin.git

Le indicamos a gitolite quienes somos:

git config --global user.email "kr0m@alfaexploit.com"
git config --global user.name "kr0m"

Normalmente no se administra el git desde el propio server si no que se dan de alta users administrativos:

cd gitolite-admin/keydir
vi kr0m.pub
cd ..
cd conf

Añadimos el usuario kr0m y eliminamos el repo test.

vi gitolite.conf
repo gitolite-admin
  RW+ = id_rsa kr0m
cd ..
git add keydir/kr0m.pub
git add conf/gitolite.conf
git commit -m "anyadido kr0m al gitolite-admin"
git push

Ahora ya podemos clonar el repo desde el pc donde esté la key de kr0m.

vi .ssh/config
Host A.B.C.D
  HostName A.B.C.D
  Port 22
git clone git@A.B.C.D:/gitolite-admin

A partir de ahora toda la administración se hará desde este pc.

Añadimos nuestro repo:

cd gitolite-admin/
vi conf/gitolite.conf
repo alfaexploit
    RW+     =   kr0m
git add conf/gitolite.conf
git commit -m "anyadido alfaexploit repo"
git push

Clonamos el repositorio nuevo:

cd ~
git clone git@A.B.C.D:/alfaexploit

Esto ha sido una breve introducción a gitolite y su configuración, en artículos posteriores hablaremos de git en mas profundidad.


Autor: Kr0m -- 24/07/2014 22:33:19