Участник:Richard Jones/Git/Github Desktop: различия между версиями
Строка 45: | Строка 45: | ||
Теперь вы можете делать все, что вашей душе угодно - будь то изменения кода, [[Guide to Mapping|маппинг]], [[Soundmaking|новые звуки]] или [[Guide to Spriting|спрайты]]. Главное, помните - после того, как сделаете изменения, не забывайте их протестировать, закомпилировав код и запустив [[Server Startup|локальный сервер]]. | Теперь вы можете делать все, что вашей душе угодно - будь то изменения кода, [[Guide to Mapping|маппинг]], [[Soundmaking|новые звуки]] или [[Guide to Spriting|спрайты]]. Главное, помните - после того, как сделаете изменения, не забывайте их протестировать, закомпилировав код и запустив [[Server Startup|локальный сервер]]. | ||
Также, перед тем, как делать изменения, нужно подтянуть | Также, перед тем, как делать изменения, нужно подтянуть обновления с нашего репозитория . Сделать это не сложно! Переходим в меню "Branch" и нажимаем "Update from upstream/master": | ||
[[Файл:How to fork9.png|без|мини|400x400пкс]] | [[Файл:How to fork9.png|без|мини|400x400пкс]] | ||
Нужно будет проделать то же самое перед тем, как создавать ПР. | Нужно будет проделать то же самое перед тем, как создавать ПР. |
Версия 07:35, 13 мая 2025
Git ready to suffer
В этой статье кратко описан способ вносить в билд свои изменения с помощью Github Desktop, но если вам больше по душе консольный гит - вы можете прочитать этот гайд.
Итак, начнем. Во-первых, вам понадобится скачать Git и GitHub Desktop.
- Git - да, консольный гит тоже лучше скачать, без него никуда.
- Github Desktop - В целом, вы можете использовать любой Git-клиент, которым вы уже умеете пользоваться (Например, GitKraken), но этот гайд будет написан для GitHub Desktop. И не забудьте создать на аккаунт на гитхабе!
Для начала вам придется войти в ваш новоиспеченный Гитхаб аккаунт в GitHub Desktop. Процесс не сложный и не потребует много времени!
Войдя в приложение, нам потребуется сделать так называемый форк. Форк будет вашей собственной копией нашего репозитория, с которой вы можете делать все, что пожелаете! Просто нажмите эту кнопку на https://github.com/TauCetiStation/TauCetiClassic:
Как только вы его сделаете, у вас должно появиться что-то подобное в вашем базовом профиле на GitHub.:
Отлично! Итак, я надеюсь, вы уже скачали Github Desktop? Следующая часть будет простой: нажмите эту удобную кнопку под “Code” прямо здесь:
Вы увидите экран, который выглядит примерно так. Просто убедитесь, что у вас есть чистая папка, в которую Git сможет клонировать себя, и нажмите “Clone”:
Итак, на следующем экране вам нужно нажать “Contribute to the parent project”. Это важно, потому что это немного облегчит вашу жизнь на последующих этапах (На этапе Пул Реквеста):
Круто, теперь у вас есть копия нашего билда! Однако, прежде чем делать какие-либо изменения, вам нужно сделать одну важную вещь:
Создать новую ветку! Это супер важно, потому что нам нужно, чтобы главная “master” ветка на вашем форке была как можно более "чистой", без ваших изменений. Для каждого отдельного проекта, над которым вы работаете и для которого отправляете запрос на обновление, вы создадите отдельную ветку. Не стесняйтесь называть ее как хотите! В конце концов, это ваша ветка.
Вы также можете увидеть экран с надписью “base it off the current branch” или “base it off the upstream/master”. Это зависит от того, чего вы хотите, но если вы хотите начать новый ПР с чистого листа, всегда нажимайте “base it off the upstream/master”.
Вот, как все должно выглядеть. Вы отлично справляетесь, так держать!
Устанавливаем хуки
Этот шаг очень важен!
Наш репозиторий довольно большой, и в нем одновременно работают большое количество людей, над большим количеством проектов, зачастую на одних и тех же файлах одновременно. Как следствие, в файлах могут возникать конфликты. Но у нас есть отличный набор инструментов, которые помогут нам справиться с этими конфликтами, и установка этих Git-хуков на данный момент - одна из лучших вещей, которые вы можете сделать.
Во-первых, в корневом каталоге вашего репозитория перейдите в /tools/_git-hooks
и запустите _install.sh
. Это автоматически настроит ваши Git-хуки, что избавит вас от многих трудностей. Этот хук будет "объединять" ваши изменения, когда вы редактируете карты. Удостоверьтесь, также, что у вас стоит Java, она нужна для хуков.
Делаем изменения
Теперь вы можете делать все, что вашей душе угодно - будь то изменения кода, маппинг, новые звуки или спрайты. Главное, помните - после того, как сделаете изменения, не забывайте их протестировать, закомпилировав код и запустив локальный сервер.
Также, перед тем, как делать изменения, нужно подтянуть обновления с нашего репозитория . Сделать это не сложно! Переходим в меню "Branch" и нажимаем "Update from upstream/master":
Нужно будет проделать то же самое перед тем, как создавать ПР.
Отправляем Commit
Пришло время отправлять изменения на главный репозиторий. Зайдите обратно в GitHub Desktop и проверьте, что в файлах нет лишних изменений, которые вы не хотите отправлять. Если вы хотите избавиться от чего-то - просто щелкните правой кнопкой мыши на файл, который хотите удалить, и нажмите “Discard changes”.
Допустим, я доволен тем, что сделал - что тогда? Меню коммита! Постарайтесь давать вашим коммитам адекватные названия, в формате "Removes clown" или "Tweaks the dorm room".
Отлично. Теперь нажмем “Commit to (здесь название вашей ветки)”. Если там написано “Commit to master/main”, не нажимайте эту кнопку, потому что вы испортите свою главную ветку вашего репозитория.
Поздравляю, вы “коммитнули” свои изменения! Что делать, если вам что-то в них не понравилось, и вы поняли, что допустили опечатку, или просто захотите вернуться? Вы всегда можете просто сделать другие изменения и снова сделать коммит, но вы также можете перейти на вкладку "История" и нажать эту кнопку:
“Undo commit” просто отменит ваш коммит, и тогда вы сможете внести любые новые изменения, а затем повторно сделать коммит. Это одно из преимуществ Git: у него мощная система управления версиями, которую вы можете легко использовать для перехода от одной точки во времени работы к другой.
Создаем Pull Request
Однако, если вы довольны изменениями, то обратите внимание на эти кнопки:
Любой из этих вариантов сработает, и ваша ветка будет загружена на удаленный сервер (github.com). Вот что отобразится далее:
Вот она, простая кнопка для создания ПР-а! Вы можете просто нажать на нее, и сразу же откроется страничка в вашем веб-браузере.
Теперь заполните описание ПР-а - так, как указано в шаблоне (добавление одного-двух превью ваших изменений очень приветствуется). При создании ПРа стоит придерживаться определённых норм, а именно: избегать употребления сленга, нецензурной брани и стараться избегать многократного употребления одних и тех же слов (последнее применительно только к чейнджлогу). Я бы посоветовал просмотреть примеры ПР-ов, открыть несколько из них и проанализировать то, как они описывают свои изменения.
Правильно пишем чейнджлог
После описания, вы должны самостоятельно написать чейнджлог, который будет виден в игре. Чейнджлог генерируется автоматически сразу после мержа изменений.
- Ключевым моментом для чейнджлога является метка
:cl:
. Всё что идёт после неё будет считаться обработчиком за чейнджлог, который и будет высвечиваться в игре. (Поэтому важно, чтобы под меткой ничего кроме самих чейнджлогов не было.) Через пробел можно написать свой ник, но это целесообразно только в том случае, если имя аккаунта на гитхабе и в игре различаются. В случае, если вы лишь посредник при публикации ПРа (вас попросили залить кем-то нарисованные спрайты), то хорошим тоном будет вписать профиль того человека. Сюда можно написать более одного ника.
Далее речь пойдёт непосредственно о наполнении чейнджлога. Для упрощения восприятия и систематизации, различные нововведения подразделяются на группы, маркеры для которых представлен ниже. Вам необходимо сначала написать маркер, а уже затем описать, что вы сделали:
- bugfix:
тут описываются различные фиксы;
- rscadd:
в эту группу нужно вносить добавление нового функционала или фичь;
- rscdel:
откаты фичь, удаление старого или ненужного и так далее;
- image:
всё что касается визуальной составляющей уйдёт в эту группу;
- sound:
звуки и всё что с ними связано будут тут;
- spellcheck:
исправления/изменения в тексте;
- tweak:
изменения влияющие на игровой процесс, но, как правило, базирующиеся на существующем и являющиеся, в общем масштабе, незначительными (настройки чего-то или мелкофичи);
- balance:
затрагивая игровой баланс смело пишите сюда;
- map:
изменения на карте;
- performance:
всё что влияет на производительность игры или работы билда в целом, и прочее;
- experiment:
в данном разделе нужно описывать изменения, вероятность отката которых, вы не исключаете;
- ru:
изменения, касающиеся перевода; (вместо ru также можно использовать localization)
Стоит оговорить, что текста в чейнджлоге должно быть немного, но и информативность должна быть сохранена по-максимуму. Если вы уверены, что не уложитесь в понятие краткость, то вы можете воспользоваться маркером [link]
, который нужно добавить к конкретной группе. Маркер даст указание обработчику в автоматическом порядке дописать к чейнджлогу гипер-ссылку ведущую на ваш ПР, в котором вы можете спокойно разгуляться с описанием. Как это должно выглядеть на практике можно увидеть в далее приложенном примере.
Важно: [link] - это всего лишь маркер для обработчика . В саму метку НИЧЕГО помещать не надо, ссылка получается АВТОМАТИЧЕСКИ обработчиком в процессе генерации чейнджлога.
На этом всё. Нажимаем "Create pull request". Готово! После создания ПРа :cl:
заменится на эмодзи.
Пример
В случае, если вы сделаете что-то неправильно, не стоит пугаться, всегда найдутся те, кто подскажет, а в случае надобности и покажет как сделать правильно.
Нажмите “Create Pull Request” и дождитесь реакции браузера.
У вас получилось! Вы создали ПР на Гитхабе!