Установка git + gitolite на CentOS 7
Подразумеваем, что уже установлена CentOS 7 со всеми обновлениями (yum update).
Сначала подготовим платформу:
yum install perl-devel gcc wget
wget http://search.cpan.org/CPAN/authors/id/S/SM/SMUELLER/Data-Dumper-2.154.tar.gz
tar xvzf Data-Dumper-2.154.tar.gz
cd Data-Dumper-2.154
perl Makefile.PL
make && make install
Дальше устанавливаем git:
yum install git
Создаем пользователя:
useradd -p PASSWORD git
В файле /etc/ssh/sshd_config (не путать с ssh_config) и раскомментируем строки:
RSAAutentification yes
PubkeyAutentification yes
AuthorizedKeysFile .ssh/authorized_keys
Перезапускаем на сервере демон sshd:
service sshd restart
Заходим под пользователем git:
su git
cd ~
Создаем ключ для пользователя git (с именем, например, id_git):
ssh-keygen -t rsa -b 2048
Из под root выставляем права:
chown git:git /home/git/.ssh/id_git.pub
chmod 700 /home/git/.ssh/
chmod 600 /home/git/.ssh/authorized_keys
Создадим недостающие папки:
mkdir /home/git/.gitolite
mkdir /home/git/.gitolite/logs
Устанавливаем gitolite из под git:
git clone git://github.com/sitaramc/gitolite
mkdir -p ~/bin
gitolite/install -ln ~/bin
gitolite setup -pk id_git.pub
Если последняя команда вызывает ошибку, то:
$HOME/bin/gitolite setup -pk ~/.ssh/id_git.pub
Дальше стягиваем себе репозиторий:
git clone git@host:gitolite-admin
Настраиваем под свои нужды и заливаем изменения на сервер.