ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Как настроить Git-сервер на Linux

Как создать и перечислить локальные и удаленные ветки Git

Когда дело доходит до хостинга Git, у вас есть несколько доступных вариантов. GitHub, Gitlab и Bitbucket являются популярными решениями, но стоит рассмотреть возможность использования собственного Git-сервера.

Настройка Git Server позволяет вам создавать частные репозитории без ограничений бесплатных планов провайдеров.

В этой статье мы объясним, как настроить пустой сервер Git в Linux. Эта настройка хороша, если у вас мало репозиториев, а соавторы технически подкованы. В противном случае вам следует рассмотреть возможность установки самостоятельно размещенного git-приложения, такого как Gitea, Gogs или Gitlab.

Сервер Git может быть установлен на любой удаленной машине с Linux или даже в вашей локальной системе.

 

Первым шагом является установка Git на ваш сервер.

Если вы используете Debian или Ubuntu, обновите индекс локального пакета и установите git , выполнив следующие команды от имени пользователя sudo:

sudo apt update && sudo apt install git

 

Чтобы установить пакет git на серверах CentOS, введите:

sudo yum install git

 

Затем создайте нового пользователя, который будет управлять репозиториями Git:

sudo useradd -r -m -U -d /home/git -s /bin/bash git

 

Домашний каталог пользователя установлен в /home/git. Все репозитории будут храниться в этом каталоге. Мы не установили пароль для пользователя «git», вход в систему будет возможен только с использованием ключей ssh.

Переключитесь на пользователя «git» с помощью команды su:

sudo su - git

 

Выполните следующие команды, чтобы создать каталог SSH и установить правильные разрешения :

mkdir -p ~/.ssh && chmod 0700 ~/.ssh

 

Создайте файл с именем ~/.ssh/authorized_keys, который будет содержать ключи SSH авторизованных пользователей:

touch ~/.ssh/authorized_keys && chmod 0600 ~/.ssh/authorized_keys

 

Вот и все. Настройка сервера завершена. Теперь вы готовы создать свой первый Git-репозиторий.

Запустите следующую команду, чтобы запустить новый пустой репозиторий:

git init --bare ~/projectname.git

 

Вы можете назвать каталог, как хотите. Важно создать репозиторий в домашнем каталоге пользователя «git».

Initialized empty Git repository in /home/git/projectname.git/

 

Чтобы иметь возможность отправлять локальные изменения git на сервер Git, вы должны добавить свой открытый SSH-ключ локального пользователя в файл authorized_keys удаленного пользователя «git» .

Если у вас уже есть пара ключей SSH, созданная в вашей локальной системе, вы можете отобразить открытый ключ, набрав:

cat ~/.ssh/id_rsa.pub

 

Вывод должен выглядеть примерно так:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDd/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== danny@linuxize.com

 

Если вы получаете сообщение об ошибке: No such file or directory, означающее, что у вас нет пары ключей SSH, созданной на вашем локальном компьютере.

Для создания новой пары ключей SSH используйте следующую команду:

Exit mobile version