Способы оплаты Abuse

Как развернуть свой Git-сервер на Windows Server: Gitea как альтернатива GitHub

02.07.2025, 16:35

Когда над проектом работает команда, без Git обойтись невозможно. Это основа — система, которая хранит историю изменений, помогает работать параллельно, сравнивать версии и, если нужно, откатываться назад.

В большинстве случаев используют GitHub или похожие облачные сервисы. Но что делать, если вы не можете выносить код за пределы компании или просто хотите всё держать под контролем? Решение — поднять локальный Git-сервер. И сделать это можно даже на Windows Server. Один из самых удобных инструментов — Gitea: лёгкий, не требующий сложной настройки и хорошо работающий на Windows.

Что нужно для старта

— Сервер с Windows Server (2016, 2019, 2022) или обычная Windows 10/11 Pro.
— Подключение к интернету — чтобы скачать нужные файлы.
— Права администратора.

Мы пройдём путь от установки Git до запуска Gitea, настройки SSH и создания первого репозитория.

Устанавливаем Git и настраиваем SSH

Начнём с основ — самого Git.

1. Зайдите на официальный сайт Git и скачайте установочный файл. Сайт сам определит подходящую версию.
2. Запустите установку от имени администратора.
3. Во всех окнах можно просто нажимать «Next» — стандартные настройки подойдут.
4. После установки в меню появятся Git Bash и Git GUI. Нам нужен Git Bash — именно в нём будем работать.

Теперь перейдем к настройке SSH. Это позволит подключаться к репозиториям безопасно, без логинов и паролей.

Создание SSH-ключа

1. Откройте Git Bash.

2. Введите команду:

ssh -V

Если видите версию OpenSSH — всё в порядке, SSH установлен.

3. Создаём ключ:

ssh-keygen -t rsa -b 4096 -C "git@your-server"

Метка (git@your-server) может быть любой — она просто помогает потом вспомнить, откуда этот ключ.

Нажимайте Enter на всех этапах — пусть ключи сохраняются по умолчанию и без пароля.

В результате появятся два файла:
— id_rsa — приватный ключ (храните его в тайне),
— id_rsa.pub — публичный ключ (им и будем пользоваться).

Проверить наличие ключей можно командой:

ls ~/.ssh

Теперь всё готово для установки Gitea.

Установка и запуск Gitea на Windows Server

Gitea — это веб-приложение, которое делает из вашего сервера полноценную альтернативу GitHub. Репозитории, коммиты, управление пользователями — всё на месте.

Шаг 1. Подготовка

1. Создайте папку, например C:\Gitea\.
2. Скачайте Gitea с официального сайта.
3. Переименуйте скачанный файл в gitea.exe и положите в папку, которую создали.

Чтобы сервис работал безопаснее, создайте отдельного пользователя:
1. Нажмите Win+R, введите compmgmt.msc.
2. Перейдите в раздел «Пользователи», создайте нового — например, gitea_user.
3. Уберите обязательную смену пароля и поставьте галочку «Пароль не истекает».

Шаг 2. Запуск Gitea

1. Откройте командную строку от имени администратора.
2. Перейдите в папку с Gitea:

cd C:\Gitea

3. Запустите Gitea:

gitea.exe web

Если всё прошло успешно, увидите сообщение, что сервер запущен на http://localhost:3000.

Первичная настройка через веб-интерфейс

Зайдите в браузере по адресу http://localhost:3000.

1. Database Type — оставьте SQLite3 (простой вариант без отдельной СУБД).
2. Path — ничего менять не нужно.
3. Repository Root Path — пусть будет C:\Gitea\repos.
4. Application URL — для локального доступа http://localhost:3000, для работы в сети — http://IP_сервера:3000.
5. Admin Account — придумайте логин и пароль администратора.

Нажмите Install Gitea — и через пару секунд вы попадёте в интерфейс.

Проверка: создаём первый репозиторий

1. Зайдите под админом.
2. Нажмите New Repository.
3. Назовите репозиторий, например, test.
4. Создайте его пустым.

Поздравляем — у вас уже работает свой Git-сервер!

Доступ к Gitea из локальной сети

Чтобы другие компьютеры могли подключаться, откройте порт 3000 в брандмауэре Windows:

1. Перейдите по следующему пути: Панель управления → Система и безопасность → Брандмауэр → Дополнительные параметры;

2. Задайте новое правило для входящих соединений;

— Тип — для порта → TCP → порт 3000;
— Разрешить подключение;
— Применить ко всем профилям;
— Назовите правило, например Gitea TCP 3000.

Теперь Gitea будет доступна по IP-адресу сервера (узнать его можно через ipconfig).

Настройка SSH-доступа

Чтобы не вводить логин/пароль при каждом взаимодействии с репозиторием, подключайтесь по SSH.

Включаем SSH-сервер на Windows Server

1. Перейдите в Параметры → Приложения → Дополнительные компоненты.
2. Найдите и установите OpenSSH Server.
3. После установки откройте PowerShell с правами администратора и введите:

Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'

Откройте порт 22 в брандмауэре — как делали для 3000, только укажите порт 22 (TCP).

Добавляем ключ в Gitea

1. На клиентской машине (компьютере разработчика) с помощью Git Bash создайте SSH-ключ:

ssh-keygen

Нажмите Enter на всех этапах.

2. Откройте файл id_rsa.pub в блокноте, скопируйте содержимое.

3. В Gitea зайдите в свой профиль → Settings → SSH / GPG Keys → Add Key.

4. Вставьте ключ, задайте имя (например, «Рабочий ПК») → Add Key.

Проверка подключения и клонирование

Проверьте SSH-доступ:

ssh git@IP_сервера -p 22

Если всё настроено правильно, получите сообщение:

Hi there, you've successfully authenticated, but Gitea does not provide shell access.

Теперь можно клонировать репозиторий:

git clone ssh://git@servers_IP:22/user/repo.git

Пример:

git clone ssh://git@192.168.1.100:22/admin/test.git

Если SSH-ключ добавлен, система подключится без пароля.

Что ещё можно использовать

Если захочется попробовать альтернативу — посмотрите на GitBucket. Он тоже работает на Windows и предлагает похожий функционал, но требует другой подход к установке и немного отличается интерфейсом. Если Gitea по каким-то причинам не подойдёт — GitBucket вполне может заменить его.