Плагин для серверов Майнкрафт на Spigot и Paper, который выполняет git pull для настроенных Git-репозиториев. Он пригодится для обновления датапаков и других файлов сервера из репозиториев без ручного копирования.
Возможности
- Обновляет все репозитории или один репозиторий по имени.
- Каждый репозиторий можно скачать в свою папку и указать для него ветку.
- Репозитории при общей команде обрабатываются по очереди; ошибка одного не отменяет остальные.
- Если папка отсутствует, плагин может выполнить
git clone. - Запущенная задача обновления не допускает параллельный запуск.
- Поддерживается автодополнение имён репозиториев и команды перезагрузки.
- Результаты выводятся в чат или консоль, а подробный вывод Git — в логи сервера.
Команды
/pull— обновить все настроенные репозитории./pull <name>— обновить репозиторий с указанным именем./pull reload— перезагрузить конфигурацию.
Права
gitpull.pull— доступ к/pullи/pull <name>.gitpull.reload— доступ к/pull reload.
По умолчанию оба права есть у операторов.
Настройка
Конфигурация находится в plugins/gitpull/config.yml.
git-command— команда Git или полный путь к исполняемому файлу Git.clone-if-missing— разрешает клонирование, если целевая папка не является Git-репозиторием.timeout-seconds— ограничение времени операции для одного репозитория в секундах.repositories— список репозиториев; у каждого задаютсяrepository,directoryиbranch.
Путь directory может быть абсолютным или относительным к корневой папке сервера. Если branch оставить пустым, используется ветка по умолчанию. Для закрытых репозиториев аутентификация берётся из локальной настройки Git на сервере, например через SSH-ключ или менеджер учётных данных.
Требования
На машине сервера должен быть установлен Git и доступен через git-command.
