Git-сервер MTSR
Git-сервер MTSR предназначен для хранения, разработки новых или же доработки существующих модов игры minetest. Разработку можно вести как собственноручно, так и работая в общей команде.
Общие рекомендации по использованию git-сервера MTSR
Размещение модов в репозиторий
- каждый самостоятельный мод следует хранить в своём отдельном репозитории.
- если есть несколько тесно связанных модов (которые могут иметь зависимость друг от друга), то их можно разместить в одном общем репозитории. Но лучше этого избегать, размещая каждый мод в отдельном репозитории, дополнительно давая ссылку на репозиторий связанного мода в описании.
Функциональные ветки в репозиториях
Maintainer мода — человек, который владеет репозиторием мода и управляет его развитием.
Каждый репозиторий содержит ветку main
— это текущая релизная версия мода, готовая к установке на сервер.
От ветки main
растёт ветка devel
. В неё попадают новые функции, которые либо проходят интеграционное тестирование, либо уже его прошли, но ещё не были одобрены для релиза.
Внесение изменений (исправление ошибок, дополнения и т.д.) в моды других участников git-сервера
Если вы собираетесь что-то менять в существующем моде, то для этого изменения:
- Вы должны создать свою отдельную ветку (эта ветка должна расти из ветки
main
); - По завершении работы над изменениями вам нужно создать запрос на слияние с веткой
devel
(в описании к запросу необходимо подробно описать, что вы сделали), по возможности, старайтесь использовать стратегиюrebase
; - После того, как ваши изменения будут протестированы и maintainer мода признает их желательными, он одобрит слияние.
- Ваши изменения попадут в ветку
devel
, и могут какое-то время оставаться там в ожидании. Такое может быть, если в скором времени ожидаются ещё какие-то изменения, которые обязательно нужно протестировать вместе с вашими. - Если все необходимые изменения попали в ветку
devel
и больше критических изменений не ожидается, maintainer создаёт запрос на слияние веткиdevel
с веткойmain
, где приводит список всех добавляемых изменений. На своё усмотрение maintainer мода на этом этапе может привлекать других людей для ревью перед финальным слиянием. - После того, как запрос пройдёт все проверки и слияние будет одобрено, все новые изменения попадут в ветку
main
. По своему усмотрению maintainer может поставить на текущем положении веткиmain
тэг с версией релиза и журналом изменений.
Совместная работа с модами. Организация модов MTSR
На нашем git-сервере есть возможность создать отдельную организацию, пригласив в неё других разработчиков для совместного развития проектов.
На данный момент на git-сервере заведена организация "MTSR", содержащая репозитории модов, установленных на основной игровой сервер (далее "Моды MTSR"). Только моды, перенесённые в эту организацию, будут устанавливаться на основной игровой сервер.
К репозиториям модов MTSR применяются более строгие требования. Репозиторий, не отвечающий данным требованиям не будет переносится в организацию MTSR и, следовательно, не будет установлен на игровой сервер.
Для модов MTSR рекомендации, описанные выше, обязательны к исполнению.
Дополнительно, слияние с веткой main
в таких репозиториях возможно только при одобрении ещё одного maintainer'а из организации MTSR.
Мод MTSR должен содержать файл CONTRIBUTING.md с описанием правил работы с этим модом и/или ссылкой на эту страницу.