Работа с репозиторием: различия между версиями

Материал из Uwow
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 14: Строка 14:


Вот так делать не нужно, можно удалить лишние записи: DELETE FROM smart_scripts WHERE entryorguid IN (11111, 22222);
Вот так делать не нужно, можно удалить лишние записи: DELETE FROM smart_scripts WHERE entryorguid IN (11111, 22222);
Более точный запрос:  
Более точный запрос:  
DELETE FROM smart_scripts WHERE entryorguid IN (11111, 22222) AND source_type = 0;
DELETE FROM smart_scripts WHERE entryorguid IN (11111, 22222) AND source_type = 0;

Версия от 13:51, 7 июля 2022

SQL стиль кода

Название файлов. Название файлов должно быть в следующем формате: yyyy_mm_DB.sql .

Например: 2022_06_world.sql или 2022_06_hotfixes.sql соответственно, если делаете файл для заливки в хотфиксы. Файлы должны храниться строго в вашей личной папке.

Написание запросов.

Пишите более конкретные запросы при удалении записей.

Пример:

Вот так делать не нужно, можно удалить лишние записи: DELETE FROM smart_scripts WHERE entryorguid IN (11111, 22222);

Более точный запрос: DELETE FROM smart_scripts WHERE entryorguid IN (11111, 22222) AND source_type = 0; DELETE FROM creature_text WHERE entry = 11111 AND groupId = 1 AND id in (1, 2, 6);



Комментарий в коде:

Для записи в одну строку

-- Comment something

Для записи в несколько строк

/* Comment Something */



Указывайте ссылки на wowhead в комменте перед началом кода, чтобы было понятно, что конкретно вы исправили.

Пример:

-- https://ru.wowhead.com/npc=90312

UPDATE `creature_template` SET `AIName`='SmartAI' WHERE `entry` IN (90312);

UPDATE `creature_template_addon` SET `auras` = '180589' WHERE `entry` = 90312;

DELETE FROM `smart_scripts` WHERE (`source_type`=0) AND `entryorguid` IN (90312); INSERT INTO `smart_scripts`(`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `action_delay`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES (90312, 0, 0, 0, 0, 0, 100, 0, 0, 0, 2500, 2500, 0, 11, 32707, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 'cast Incinerate (Sethekk Neophyte)'), (90312, 0, 1, 0, 9, 0, 100, 0, 5, 100, 5000, 10000, 0, 11, 183165, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 'casts spell by player range'), (90312, 0, 3, 0, 1, 0, 100, 1, 2000, 2000, 0, 0, 0, 11, 146130, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'cast out of combat'), (90312, 0, 4, 0, 4, 0, 20, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 'text');


-- https://ru.wowhead.com/quest=11111

...QUEST_CODE_HERE...



Начало работы

1. Зарегистрировать аккаунт: https://bitbucket.org/account/signin.

2. Создать ключ для приложений: https://bitbucket.org/account/settings/app-passwords

  • В Label указать название ключа(произвольное).
  • Выставить все галочки для выдачи прав записи.
  • Записать себе куда-то созданный пароль для приложения.

3. Скачать и установить https://git-scm.com/downloads и https://sourceforge.net/projects/gitextensions/

4. Запустить GitExtensions. Настроить имя пользователя и почту.

5. Клонировать репозиторий.

  • Перейдя по ссылке https://bitbucket.org/blackmanos/legionsql найти кнопку Clone, при клике появится ссылка https://YOUR_NICKNAME@bitbucket.org/blackmanos/legionsql.git.
  • Скопированную ссылку вставить в окно GitExtensions в поле Внешний репозиторий. В поле Назначение необходимо указать путь на ПК, где будет находиться репозиторий. Далее жмем Клонировать.


Отправить/Забрать изменения

Забрать изменения:

  • При нажатии на стрелочку у кнопки (https://egammi.com/images/2022/06/13/S2Ue.jpg) выбрать в меню Назначить действие кнопки - "Получить - переместить" (Pull - rebase).
  • Нажать кнопку "Получить - переместить".

Создать и отправить коммит:

  • Открыть меню коммита(https://egammi.com/images/2022/06/13/S2Uf.jpg).
  • Сохранить индексировать файлы, которые желаем отправить в репозиторий. Делается это двойным кликом в первом верхнем окне меню коммитов, либо кнопкой Индексировать.
  • Ввести описание коммита в окне "Enter commit message".
  • Отправить коммит в репозиторий можно в этом же окне. Для этого нажмите Фиксировать и отправить. При получении ошибки. Нажмите "Переместить и получить"
  • Если вы выбрали "Зафиксировать". Откройте консоль bash\cmd\etc. (https://egammi.com/images/2022/06/13/S2Uj.jpg) и введите git push