Контроль версий стал жизненно необходимым в области современной разработки программного обеспечения, поскольку позволяет отслеживать программу на уровне исходного кода. У разработчиков есть возможность отследить изменения, возвратиться на предыдущие этапы, а также отделиться от основного кода для создания альтернативных версий файлов и каталогов.
Одной из наиболее популярных систем контроля версий является git. Репозиторий Git хранит файлы огромного количества проектов, а сайты GitHub и Bitbucket позволяют быстро и просто распространить и улучшить код. В данном руководстве речь пойдет об установке Git на CentOS 7. Руководство охватывает несколько различных способов установки программы, каждый из которых имеет свои преимущества, а также настройку Git.
Требования
Прежде чем приступить к выполнению данного руководства, нужно настроить сервер CentOS 7 и создать пользователя с привилегиями sudo. Чтобы сделать это, обратитесь к руководству «Начальная настройка сервера CentOS 7».
Выполнив начальную настройку сервера, создайте SSH-подключение к серверу и приступайте к установке Git.
Установка Git
В этом разделе описаны наиболее распространенные способы установки Git. Каждый вариант имеет свои преимущества и недостатки; выбирая способ установки, нужно ориентироваться на свои требования. Например, пользователи, которые хотят следить за обновлениями программного обеспечения Git, вероятно, будут использовать менеджер пакетов yum, а пользователи, которым нужна определенная версия Git, могут воспользоваться ее исходным кодом.
Вариант 1: Установка Git с помощью Yum
Проще и быстрее всего установить Git с помощью стандартного репозитория CentOS. При этом нужно иметь в виду, что последней доступной версии программы может еще не быть в репозитории, следовательно, версия, установленная таким образом, может оказаться более старой. При необходимости установить последнюю доступную версию рекомендуется скомпилировать git из исходного кода (об этом – далее в руководстве).
Итак, чтобы установить git из стандартного репозитория CentOS, используйте менеджер пакетов yum:
sudo yum install git
Если команда не выдала ошибок, система управления версиями git будет загружена и установлена. Чтобы протестировать установку программы, запустите встроенную проверку версии:
git --version
Если эта команда выдала номер установленной версии, переходите к разделу «Настройка Git» данного руководства.
Вариант 2: Установка Git из исходного кода
Чтобы получить последнюю доступную версию Git или же просто сделать процесс установки программы более гибким, рекомендуется скомпилировать Git из исходного кода. Этот процесс займет больше времени, чем предыдущий, а полученный пакет нельзя будет обновлять при помощи yum; но это позволит загрузить более новую версию, чем та, что находится в стандартном хранилище CentOS, а также позволит контролировать параметры установки.
Прежде чем приступить к компилированию, нужно установить зависимости git. Эти пакеты и необходимые для компилирования исходного кода инструменты можно найти в стандартном репозитории CentOS:
sudo yum groupinstall "Development Tools"
sudo yum install gettext-devel openssl-devel perl-CPAN perl-devel zlib-devel
Установив все необходимые пакеты, выберите среди релизов нужную версию Git, посетив GitHub.
Первая версия на странице и есть последней доступной версией. Если рядом с версией нет -rc (сокращение от «Release Candidate»), значит, версия стабильная и надежная. Кликните на версию, которую нужно скачать. Затем кликните правой кнопкой мыши на Source code (tar.gz) и скопируйте ссылку.
Теперь нужно использовать команду wget, чтобы загрузить архив с исходным кодом по скопированной ссылке.
Примечание: скопированный вами URL может отличаться от приведенного в руководстве адреса, поскольку с момента написания статьи могла появиться новая версия.
wget https://github.com/git/git/archive/v2.1.2.tar.gz -O git.tar.gz
По окончании процесса скачивания можно распаковать исходный архив с помощью команды tar. Чтобы пакет был разархивирован корректно, нужно использовать несколько дополнительных флагов: z распаковывает архив (поскольку все файлы .gz сжаты), x извлекает отдельные файлы и папки из архива, f объявляет имя файла.
tar -zxf git.tar.gz
Итак, эта команда распакует сжатый исходный код в папку с именем загруженной версии Git (поскольку в руководстве используется версия 2.1.2, папка называется git-2.1.2).
Нужно перейти в эту папку, чтобы начать сборку программы. Вместо того, чтобы возиться с полным названием версии в папке, можно использовать символ (*), чтобы предотвратить некоторые потенциальные проблемы.
cd git-*
Перейдя в папку с исходным кодом, можно приступать к компилированию кода. Перед этим нужно выполнить предварительную проверку зависимостей ПО и аппаратных конфигураций. Все это можно проверить при помощи скрипта configure, сгенерированного make configure. Данный скрипт также использует флаг –prefix, чтобы объявить /usr/local (программную папку по умолчанию платформы Linux) как целевую папку размещения нового бинарного файла, а также создаст Makefile для следующего раздела.
make configure
./configure --prefix=/usr/local
Makefile – это конфигурационные файлы, которые обрабатываются с помощью утилиты make. Созданный только что Makefile скажет make, как компилировать программу и соединить ее с установкой CentOS для ее корректной работы. Теперь, когда Makefile готов, можно выполнить make install (с привилегиями sudo), чтобы скомпилировать исходный код и установить его:
sudo make install
Теперь система Git скомпилирована и установлена на сервер CentOS 7. Чтобы протестировать установку, попробуйте запустить встроенную проверку версии:
git --version
Если команда вернула номер версии git, значит, все работает должным образом; можно приступать к настройке git.
Настройка git
После установки git нужно предоставить некоторую информацию о себе, чтобы при создании коммита сообщение содержало правильную информацию. Используйте команду git config и укажите имя и адрес электронной почты, которые будут указываться в сообщениях о коммитах.
git config --global user.name "Ваше Имя"
git config --global user.email "you@example.com"
Чтобы убедиться в том, что эти параметры были успешно приняты, можно использовать следующую команду:
git config --list
user.name=Ваше Имя
user.email=you@example.com
Эти настройки предотвратят появление ошибок при отправке коммитов, корме того, сообщения о коммитах не придется перепроверять.
Итоги
Готово! Теперь система контроля версий Git установлена и готова к работе. Чтобы получить больше информации об использовании Git, читайте: