# Коллективное участие в проекте ## Прежде чем создавать обсуждения (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