Предыдущий урок: Developing Discourse Plugins - Part 3 - Add custom site settings
Теперь, когда ваш плагин становится более сложным, пришло время усложнить и сам процесс его разработки.
Мы рекомендуем использовать git для контроля версий вашего плагина. Также мы советуем использовать github для обмена кодом плагина с другими разработчиками.
Создание репозитория Git
После создания аккаунта на GitHub перейдите по этому адресу, чтобы создать новый репозиторий. Вы можете назвать его как угодно, но обычно хорошо, если название начинается с discourse-. Убедитесь, что репозиторий публичный. Вот как выглядел мой экран:
Создание локальной рабочей папки
На этом этапе я создаю на компьютере локальный каталог для хранения плагина. Я обычно помещаю свой в ~/code, но вы можете выбрать любое удобное место на вашем компьютере:
mkdir -p ~/code/discourse-plugin-test
cd ~/code/discourse-plugin-test
Теперь давайте последуем инструкциям GitHub для инициализации репозитория с README:
echo "# discourse-plugin-test" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:eviltrout/discourse-plugin-test.git
git push -u origin main
Наконец, создайте файл plugin.rb для вашего плагина, как описано в части 1. Для этого примера я просто создал тестовый файл:
plugin.rb
# name: discourse-plugin-test
# about: Shows how to set up Git
# version: 0.0.1
# authors: Robin Ward
Создание символической ссылки
Поскольку вы следовали нашему руководству для разработчиков, у вас где-то на компьютере должна быть локальная копия Discourse. Я склонировал свою в ~/code/discourse, но, опять же, вы могли выбрать любое место, и это все равно будет работать, если вы соответствующим образом измените приведенный ниже код:
cd ~/code/discourse/plugins
ln -s ~/code/discourse-plugin-test .
Приведенный выше код создает символическую ссылку между кодом Discourse и папкой вашего плагина. Перезапустите сервер разработки, и вы увидите, что ваш плагин работает!
Красота такой настройки заключается в том, что вы можете просто загрузить ваш плагин на GitHub и не беспокоиться о кодовой базе Discourse, внутри которой он находится. Ваши изменения будут изолированы в самом плагине. Если вам нужно отредактировать код самого Discourse, вы все еще можете это сделать, но Git будет отслеживать эти изменения отдельно!
Я рекомендую использовать одно окно редактора для кодовой базы плагина и другое для самого Discourse. Так проще, если вы будете воспринимать их как две разные сущности.
Другие части серии
Часть 1: Основы плагинов
Часть 2: Плагин-аутлеты
Часть 3: Настройки сайта
Часть 4: Эта тема
Часть 5: Административные интерфейсы
Часть 6: Приемочные тесты
Часть 7: Публикация плагина
Этот документ находится под контролем версий — предложить изменения можно на GitHub.



