Настройка онлайн репозитория

From Valve Developer Community
< Ru
Jump to navigation Jump to search
Underlinked - Logo.png
This article needs more Wikipedia icon links to other articles to help Wikipedia icon integrate it into the encyclopedia. Please help improve this article by adding links Wikipedia icon that are relevant to the context within the existing text.
January 2024
English (en)Русский (ru)Translate (Translate)

Данная статья рассказывает процесс создания онлайн SVN репозитория, и обсуждение некоторых вариантов. Подробности об общем управлении SVN описаны здесь — Использование SVN для контроля исходников Source SDK(en).

Зачем мне нужен репозиторий?

Наибольшая польза от репозитория — сочетание изменений от членов команды в одну "текущую" копию. Если вы работаете над модом самостоятельно, Вы, вероятно, не будете нуждаться в репозитории, однако, онлайн моддинг имеет ряд преимуществ. Если вы что-то испортили, вы можете легко откатиться до предыдущей версии, а так же легко отслеживать список изменений на протяжении всего проекта. К тому же, если Valve обновила исходный код, репозиторий может облегчить задачу слияния версий.

С чего начать

Для начала, вам понадобится SVN клиент. Настоятельно рекомендуется TortoiseSVN (http://tortoisesvn.tigris.org). Установите его.

Дальше, вам нужен кто-то, кто будет держать у себя репозиторий. Здесь вы имеете три варианта: бесплатный репозиторий для открытых модификаций и бесплатный или платный репозиторий для закрытых модификаций.

Варианты хостинга

Бесплатный, открытые исходники

Логично - попробовать Google code или SourceForge. Любой может скачивать (но не заливать) вашу модификацию. Возможно, это является спорным методом, так как код Valve становится публично доступным, а это является нарушением соглашения, ибо он должен быть доступен только владельцам Source SDK. Код бесполезен без доступа к Source SDK, но с юридической точки зрения, это не имеет значения. Есть несколько модов с открытым исходным кодом, и никто до сих пор не жаловался, но я не уверен насчет легальности этого метода. Спросите Valve!

Бесплатный, закрытые исходники

Этот вариант самый ограниченный. Видимо только Multiplay.co.uk будет обеспечивать бесплатный хостинг для всех многопользовательских модов, да и то, только при условии, что вы ежеквартально предоставляете им информацию о ходе работ.

Unfuddle (http://unfuddle.com/) предлагает бесплатный SVN хостинг, вместе с системой слежения и т.п. Однако, каждый имеет доступ к дереву ваших исходников (source tree).

Платный, закрытые исходники

Мой собственный опыт — божественная схема ($ 5 в месяц, не более 5 пользователей) Проекта Locker (http://www.projectlocker.com), имеющий стабильные и хорошие условия.

Настройка

Выберите хостинг, зарегистрируйте аккаунт, и запишите адрес вашего репозитория. Создайте мод и соберите код, затем вам нужно будет просто разобраться, что отправлять в репозиторий.

Выберите папку с вашей рабочей копией, и убедитесь, что исходный код находится в ней. Если свободного места много, вы можете так же поместить туда директорию мода. Распределите вашу рабочую директорию на две папки, src (содержит исходный код), и GameDir (содержит копию вашей папки с модом).

После установки Tortoise SVN, нажмите правой кнопкой по этой папке, и выберите SVN Извлечь. Введите адрес вашего репозитория, и нажмите ok, когда вы будите предупреждены, что эти файлы уже присутствуют. Когда вы закончите, вы захотите зафиксировать вашу первую версию в репозитории. Это рекомендуется делать перед каждым изменением исходного кода, просто на всякий случай.

Ваша первая фиксация

Снова нажмите правой кнопкой мыши по папке, и выберите SVN Фиксировать. Каждый файл в каталоге будет перечислен в этом всплывающем окне. Сперва, проверьте все (вы можете нажать Home, Shift+End, а затем пробел, чтобы все было проверено)... есть некоторые файлы, которые вы не захотите помещать в репозиторий, поэтому убедитесь, что вы установили их в игнорирование на промежуточные директории, как для клиента, так и для сервера (например, Debug_HL2MP, Release_HL2MP) — эти файлы являются большими и они будут просто занимать все свободное место и пропускную способность канала. Вы также должны убедиться, что исключены любые .pdb и .ncb файлы (это пользовательские настройки и intellisense базы для Visual Studio, носящие такие же названия, как и файлы проекта, но с различными расширениями.

Теперь вы готовы, нажмите на Фиксировать и попробуйте обновиться. Поздравляю! Теперь вы можете изменять вашу модификацию сколько угодно, так как у вас есть надежная резервная копия.

Note.pngПримечание:Когда кто-нибудь из вашей команды вносит изменения, фиксирование будет отменено до вашего первого SVN обновления. Постоянное обновление (сохранение изменений), перед Фиксацией (отклонение изменений) — очень хорошая привычка.