Child pages
  • Заметки кодера. Настраиваем среду разработки под Windows

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Со временем, при эксплуатации NOCa, возникает желание взять напильник, и, наконец, довести его до рабочего желаемого состояния. Это может выражаться в следующих вещах:

...

В общем, вне зависимости от причины, есть желание внести какие-то правки в код. Обычно, для Для этого необходимо:

  1. Зайти на сервер, где расположен НОК. (на котором, конечно же, нет графической оболочки)
  2. Поправить всё что хочется.
  3. Перезапустить НОК.
  4. Посмотреть всё ли работает.
  5. Поймать трейс. Разобраться что не так.
  6. Поправить изменения. Проверить что всё работает.
  7. Найти не занятого разработчика НОКа
  8. Осчастливить его своим видением жизни. И отправить ваши изменения.

Длинноватый список) , даже для одной правки. Поэтому, я постараюсь рассказать, как можно, с комфортом дорабатывать НОК, максимально посвящая себя творчеству и не задумываясь о столь приземлённых вещах, как ближдание блуждание по серверам и наблюдение трейсов в консоли)

...

  1. Через создание "форка" (копии) репозитория нока.
  2. Напрямую, из локальной копии. (работает только если у вас есть права на коммит в основной репозиторий)
  3. Через веб-интерфейс bitbucket.org.

Для выполнения всех действий с репозиторием нам понадобится Mercurial. Необходимо выполнить клонирование репозитория в локальную папку. Создаём на диске папку (например "repository"), заходим в неё и выполняем команды:

Code Block
languagebash
> mkdir repository
> hg clone https://bitbucket.org/nocproject/noc noc
> cd noc
> hg update <actual_branch>

На данный момент актуальная ветка, это "feature/microservices". После обновления нам становится доступна копия исходного кода NOC для локальных изменений.

...

  1.  (работает только если у вас есть права на коммит в основной репозиторий)

Создание форка (собственной копии основного репозитория) удобна в случае внесения многочисленных изменений и при необходимо зафиксировать какую-либо версию НОКа (например, для контроля за изменениями). Для этого необходимо зайти под своей учётной записью на Bitbucket. Перейти на страницу NOC Project, слева нажать кнопочку Fork и придумать название своей копии. После этого откроется страница проекта, где будет ссылка на основной проект - "Fork of".

Для копирования его на локальный компьютер воспользуемся ссылкой справа сверху.выполнения всех действий с репозиторием нам понадобится Mercurial. Необходимо выполнить клонирование репозитория в локальную папку (ссылка для клонирования справа сверху на основной странице). Создаём на диске папку (например "repository"), заходим в неё и выполняем команды:

Code Block
languagebash
> mkdir repository
> hg clone https://bitbucket.org/<own_repository>/<name> noc
> cd noc
> hg update <actual_branch>

На данный момент актуальная ветка, это "feature/microservices". После обновления нам становится доступна копия исходного кода NOC для локальных изменений.

Warning

Во избежание проблем, папка с НОКом обязательно должна называться noc.

В случае работы через веб-интерфейс система контроля версий не понадобится. Достаточно скачать архив - пункт Download, на заглавной странице проекта, и, там, вкладка Branches. Выбираем необходимую ветку НОКа, скачиваем её и распаковываем в необходимую папку.

Warning

Для выполнения действий с основным репозитарием НОКа необходимы права на изменения! Они есть не у всех. Если у вас их не оказалось - ищите человека с такими правами или делайте форк.

Настройка PyCharm

Подключение копии Python на сервере.

После запуска PyCharm лицезреем основное окно, либо экран приглашения, если запуск осуществлён в первый раз.

Необходимо подключить удалённый python (Project Interpreter). Для этого заходим в настройки File -> Settings ->"Default Project" -> "Project Interpreter"

...

Закончив с настройкой Deployment переходим к выбору Интерпретатора Python. для работы с нашим проектом. Для этого переходим в меню "Project:noc" -> "Project Interpreter" и в выпадающем списке выбираем, настроенный ранее, python. Если настроенного интерпретатора не оказалось в списке - значит, необходимо повторить настройку. Нажимаем кнопку Apply (Применить).

...

Теперь мы можем вносить измения в скрипты, модули и прочий исходны код. Для загрузки наших изменений на сервер с НОКом (мы его настроили на шаге Добавления проекта) необходимо воспользоваться меню "Upload", которое доступно по щелчку правой клавишей мыши.

...

После того как мы отладили наши изменения, необходимо сделать их доступными остальным участникам проекта. С этой целью необходимо создать Pull request (Запрос на добавление) в основную ветку разработки НОКа.

Note

Для данного действия требуются права на основной репозиторий с НОКом.

Если мы клонировали проект напрямую с основного репозитария нока, то для отправки наших изменений необходимо:

...

  1. Сделать commit (добавление) изменений в локальную копию. Выполняется командой "hg commit -m "Описание изменений""
  2. Отправить (Протолкнуть) изменения в свой репозиторий "hg push --new-branch -branch "MyFix"". Название ветки может быть любой. В данном случае можно не создавать новую ветку, но это упростит дальнейшую работу, в случае, если придётся делать дополнительные изменения.
  3. Зайти в свой репозиторий НОКа на Bitbucket в раздел Branch, Там,по имени, находим добавленную нами ветку и нажимаем ссылку "Create pull request". 
  4. Выбирем куда будем делать Pull Request, Заполняем описание и заголовок. Выбираем Rewiers (проверяющих), которые будут проверять наш запрос на правильность. На вкладке Diff смотрим - какие изменения собираемся вносить.
  5. После проверки всех полей - нажимаем кнопку "Create pull request".

...