Настройка онлайн репозитория
![Underlinked - Logo.png](/w/images/9/91/Underlinked_-_Logo.png)
![Wikipedia icon](/w/images/thumb/9/9a/Wikipedia_icon_small.png/16px-Wikipedia_icon_small.png)
![Wikipedia icon](/w/images/thumb/9/9a/Wikipedia_icon_small.png/16px-Wikipedia_icon_small.png)
![Wikipedia icon](/w/images/thumb/9/9a/Wikipedia_icon_small.png/16px-Wikipedia_icon_small.png)
January 2024
Данная статья рассказывает процесс создания онлайн SVN репозитория, и обсуждение некоторых вариантов. Подробности об общем управлении SVN описаны здесь — Использование SVN для контроля исходников Source SDK .
Contents
Зачем мне нужен репозиторий?
Наибольшая польза от репозитория — сочетание изменений от членов команды в одну "текущую" копию. Если вы работаете над модом самостоятельно, Вы, вероятно, не будете нуждаться в репозитории, однако, онлайн моддинг имеет ряд преимуществ. Если вы что-то испортили, вы можете легко откатиться до предыдущей версии, а так же легко отслеживать список изменений на протяжении всего проекта. К тому же, если 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](/w/images/thumb/c/cc/Note.png/10px-Note.png)