 
            Настройка частного репозитория Git на собственном сервере
Git является одним из наиболее популярных инструментов для управления версиями исходного кода. В Git используется понятие репозитория, который является хранилищем всех версий кода. Одним из вариантов использования Git является настройка частного репозитория, который позволяет сохранять и управлять версиями кода внутри организации или команды разработчиков.
В данной статье, под словами "сервер" и "локальная машина" следует понимать следующий смысл:
Сервер - это машина, к которой вы можете подключиться удаленно (например VDS, VPS).
Локальная машина - это машина, непосредственно на которой работает человек (ноутбук, рабочий компьютер и т.д.)
Настройка частного репозитория Git довольно проста и состоит из нескольких простых шагов, которые будут описаны далее.
В этой стать мы организуем следующую схему:

Шаг 1: Установка Git
Перед тем, как начать настройку частного репозитория Git, необходимо убедиться, что на вашем сервере и локальной машине установлен Git. Для этого можно воспользоваться командной строкой и ввести команду git --version. Если Git уже установлен, то будет выведена версия, иначе необходимо установить Git. Процесс установки Git зависит от операционной системы и не рассматривается в данной статье.
Шаг 2: Создание центрального репозитория на сервере
Создание частного репозитория Git начинается с создания нового центрального репозитория на сервере, к которому мы будем подключаться с локальной машины. Для этого необходимо зайти на сервер, на котором будет размещен репозиторий, и выполнить следующие команды:
cd "пусть к папке в которой будет находиться центральный репозиторий"
mkdir my_project
cd my_project
git init --bare
Команда mkdir создает новую директорию с именем my_project. Команда cd переходит в созданную директорию. Команда git init --bare создает новый репозиторий в директории my_project. Опция --bare указывает на то, что данный репозиторий будет использоваться только для хранения кода, а не для работы непосредственно с ним.
Команда git init --bare используется для создания голого (bare) репозитория Git. Основная особенность голого репозитория заключается в том, что он не содержит рабочей директории, то есть не имеет рабочих файлов. Вместо этого он содержит только базу данных Git, которая хранит все версии кода и историю изменений.
Голый репозиторий обычно используется в качестве центрального репозитория для совместной работы нескольких разработчиков над одним проектом. Разработчики могут клонировать голый репозиторий локально, делать свои изменения и отправлять их на сервер. При этом, так как голый репозиторий не содержит рабочей директории, не возникает конфликтов с уже существующими файлами на сервере.
Шаг 3: Создание обычного репозитория с данными на сервере
Чтобы наполнить наш центральный репозиторий какими-нибудь данными, нам необходимо для начала создать обычный репозиторий с данными. Мы создадим его на сервере, где и расположен наш центральный репозиторий.
cd "пусть к папке в которой будет находиться обычный репозиторий с даннымии"
mkdir my_data_repository
cd my_data_repository
git init
Шаг 4: Отправка данных в центральный репозиторий
Теперь нам нужно отправить данные обычного репозитория в центральный, что сделает их доступными через интернет и позволит организовать совместную деятельность нескольких разработчиков.
Для этого можно воспользоваться командой git remote add, находясь в директории репозитория с данными, который мы создали на предыдущем шаге.
git remote add origin user@server:/path/to/my_project
Здесь origin - это имя удаленного репозитория, user - имя пользователя на сервере, server - адрес сервера и /path/to/my_project - путь к созданному центральному репозиторию на сервере.
Шаг 5: Клонирование репозитория
Чтобы начать работать с репозиторием, необходимо склонировать его локально на свой компьютер (локальную машину). Для этого выполните команду:
git clone user@server:/path/to/my_project
Эта команда склонирует удаленный репозиторий на ваш компьютер в директорию my_project. Теперь вы можете работать с кодом и сохранять изменения в своем локальном репозитории.
Шаг 6: Добавление файлов в репозиторий
Чтобы добавить новые файлы в репозиторий, используйте команду git add:
git add file_name
Эта команда добавит файл file_name в индекс, который содержит список изменений, которые будут включены в следующий коммит.
Или можно добавить все появившиеся в проекте файлы командой:
git add --all
Шаг 7: Создание коммита
После того, как вы добавили изменения в индекс, необходимо создать коммит с помощью команды git commit:
git commit -m "Commit message"
Здесь Commit message - это сообщение, описывающее изменения, которые были сделаны в данном коммите.
Шаг 8: Отправка изменений на сервер
Чтобы отправить изменения на сервер, выполните команду git push:
git push origin master
Здесь origin - имя удаленного репозитория, а master - название ветки, которую вы хотите отправить на сервер.
Шаг 9: Получение изменений с сервера
Если другие разработчики внесли изменения в удаленный репозиторий, вы можете получить их на свой компьютер с помощью команды git pull:
git pull origin master
Здесь origin - имя удаленного репозитория, а master - название ветки, которую вы хотите получить с сервера.
Заключение
В данной статье мы разобрали, как настроить свой собственный Git-сервер и создать репозитории. Вышеприведённых сведений достаточно для того, чтобы помочь тем, у кого не было опыта работы с Git, приступить к использованию собственного Git-сервера.
