89 lines
4.4 KiB
Markdown
89 lines
4.4 KiB
Markdown
# Коллективное участие в проекте
|
||
|
||
## Прежде чем создавать обсуждения (issues)
|
||
|
||
* старайтесь ознакомиться с документацией по проекту в
|
||
[readme.md](/readme.md)
|
||
* старайтесь ознакомиться с уже имеющимися задачами с помощью поиска,
|
||
включая закрытые задачи
|
||
* будьте в курсе изменений по проекту
|
||
* нажмите watch и star чтобы получать оповещения об изменениях
|
||
|
||
## Как добавить функционал к проекту
|
||
|
||
Помимо задач, можно использовать концепцию Git-flow.
|
||
|
||
### Процесс коллективной разработки
|
||
|
||
Мы используем
|
||
|
||
* итеративный подход к разработке
|
||
* первоначально мы решаем недочёты, а уже затем дорабатываем функционал
|
||
|
||
#### О подготовке рабочего места разработчика
|
||
|
||
Подготовка рабочего места заключается в исполнении (с правами администратора)
|
||
файла `install\install.cmd`.
|
||
**Текущим должен быть корневой каталог репозитория!**
|
||
Потребуется несколько перезагрузок.
|
||
Выполнять вплоть до отсутствия ошибок при выполнении.
|
||
|
||
Будут установлены:
|
||
|
||
* [chocolatey][] (менеджер пакетов)
|
||
* [git][]
|
||
* [VSCode][]
|
||
* [OneScript][]
|
||
* ряд пакетов под OneScript
|
||
* и git precommit hook в репозиторий проекта
|
||
|
||
#### Внесение изменений в расширения
|
||
|
||
Используем [precommit1c][].
|
||
Порядок действий по фиксации изменений в расширениях следующий:
|
||
|
||
* пишем новую версию расширения в каталог extensions
|
||
* добавляем расширение в индекс git: `git add extensions/\*.cfe`,
|
||
или же указываем конкретный файл
|
||
* собственно, commit: `git commit`.
|
||
При этом precommit1c разберёт добавленные в индекс расширения конфигурации,
|
||
добавит в индекс "исходные" файлы расширений, а сами файлы расширений из индекса
|
||
уберёт.
|
||
|
||
Безусловно, удобнее выполнять эти действия с использованием [VSCode][].
|
||
|
||
Стратегия ветвления - Git Flow.
|
||
|
||
При необходимости внесения изменений в сам проект предложите Pull Request в основной
|
||
репозиторий в ветку `develop`.
|
||
|
||
### Pull-request
|
||
|
||
Для предложения изменений:
|
||
|
||
* сделайте `fork` репозитория
|
||
* создайте отдельную `feature/*` ветку на базе `develop`
|
||
* реализуйте функционал или возьмите в работу какую-то задачу
|
||
* после завершения работы получите последние изменения в ветку `develop`
|
||
из основного репозитория
|
||
* слейте Вашу `feature/*` ветку с Вашей веткой `develop` (squash merge)
|
||
* сделайте `pull-request` в `develop` ветку основного репозитория
|
||
|
||
## CLA - лицензия на коллективное участие
|
||
|
||
Мы придерживаемся [CLA](https://cla.github.com/agreement),
|
||
что означает Ваш вклад не нарушает никаких наших прав
|
||
и не накладывает на нас никаких ограничений и обязательств.
|
||
|
||
### Полезные ссылки
|
||
|
||
* https://infostart.ru/public/864097/
|
||
* https://infostart.ru/public/721600/
|
||
* https://github.com/alexpetrov/xdd-bootstrap-1C
|
||
|
||
[chocolatey]: https://chocolatey.org
|
||
[Git]: https://github.com/git-guides/install-git#install-git-on-windows "Install Git on Windows"
|
||
[VSCode]: https://code.visualstudio.com "Visual Studio Code"
|
||
[OneScript]: http://oscript.io
|
||
[precommit1c]: https://github.com/xDrivenDevelopment/precommit1c
|