Проблемы с git в Jenkins
В ходе подключения git репозитория к Jenkins получил следующуу ошибку:
Failed to connect to repository : Command 'git config -local credential.username username' returned status code 129:
stdout:
stderr: error: unknown option 'local'
usage: git config [options]
Ошибка вызвана тем, что Jenkins требует git версии 1.8+, а в репах CentOS 6.5 доступен только 1.7. Где-то на просторах интернета пишут, что в репе rpmforge-extras
есть новая версия. Проверил - нету.
Я решил долго не мучаться и собрать git из исходников.
Подготовка:
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker -y
Сам процесс:
wget https://www.kernel.org/pub/software/scm/git/git-2.6.1.tar.xz
tar xf git-2.6.1.tar.xz
cd git-2.6.1
Собираем:
make prefix=/usr/local/git all
Устанавливаем:
make prefix=/usr/local/git install
Добавляем /usr/local/git/bin
в переменное окружение PATH и применяем изменения:
echo 'export PATH=$PATH:/usr/local/git/bin' >> /etc/bashrc
source /etc/bashrc
Проверить версию git можно следующей командой:
git -version
Осталось подкрутить настройки Jenkins. В web-интерфейсе переходим в Manage Jenkins -> Configure System
Ищем секцию Git
и устанавливаем нормальное значение для Path to Git executable
(/usr/local/git/bin/git)