-
Notifications
You must be signed in to change notification settings - Fork 92
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'release/3.0.0' into typo
- Loading branch information
Showing
99 changed files
with
3,072 additions
and
1,705 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,155 @@ | ||
# Коллективное участие в проекте | ||
|
||
> постоянно наполняемый FAQ для "контрибьюторов" | ||
## Прежде чем создавать задачи (issues) `GitHub` | ||
|
||
* старайтесь ознакомиться с документацией по проекту с помощью поиска | ||
* старайтесь ознакомиться с уже имеющимися задачами с помощью поиска, включая закрытые задачи | ||
* ознакомьтесь с каталогом features для понимания уже существующего и стабильного функционала | ||
* будьте в курсе изменений по проекту | ||
* нажмите `watch` и `star`, чтобы получать оповещения об изменениях | ||
|
||
### Старайтесь создавать задачи в формате `BDD` | ||
|
||
* Формат описания, если вы нашли "недочёт" (bug) | ||
|
||
```gherkin | ||
Дано <имею версию проекта> | ||
И <версию операционной системы> | ||
И <версию 1С предприятия> | ||
И <параметры совместимости конфигурации> | ||
``` | ||
|
||
* Формат описания, если хочется добавить новый функционал (enhancement) | ||
|
||
```gherkin | ||
Функционал: <Краткое описание> | ||
Как <роль кому нужен функционал> | ||
Чтобы <цель того кому нужен данный функционал> | ||
``` | ||
|
||
## Как добавить функционал к проекту | ||
|
||
мы используем [Example mapping](https://cucumber.io/blog/2015/12/08/example-mapping-introduction), поэтому: | ||
|
||
* всё, что не имеет feature-файла - это просто вопрос или "вброс" | ||
* если существует feature-файл только с заголовком - это предварительное требование | ||
* если в feature-файле есть Сценарии - это требование с правилами реализации | ||
* есть в Сценарии есть шаги - это требование с правилами и примерами | ||
|
||
Соответственно, помимо задач, можно использовать концепцию | ||
|
||
* git-flow - коллективная разработка с помощью github | ||
* pull-request - для черновиков функционала используется каталог ```.\features\drafts``` | ||
|
||
### Процесс коллективной разработки | ||
|
||
в соответствии с принципами Agile и Open-Source мы используем | ||
|
||
* итеративный подход к разработке | ||
* первоначально мы решаем недочёты, а уже затем дорабатываем функционал | ||
* приоретизация и порядок доработки остаются на усмотрение команды oscript-library | ||
|
||
однако это можно изменить 3-мя способами: | ||
|
||
### Pull-request | ||
|
||
#### Первичная настройка | ||
|
||
если вы разработчик | ||
|
||
* Установите `oscript`, `git` и проверьте, что данные находятся в переменной `PATH`, | ||
* т.е. `git, oscript, opm` вызываются без указания полного пути в коммандной строке. | ||
|
||
* сделайте `fork` репозитория | ||
* склонируйте репозитарий себе на машину ```git clone https://github.com/*ТУТИМЯВАШЕГОПОЛЬЗОВАТЕЛЯ*/gitsync.git ``` | ||
* переходим в склонированный каталог через `cd gitsync` и выполняем несколько магических комманд | ||
``` | ||
git remote add upstream https://github.com/oscript-library/gitsync.git | ||
git fetch upstream | ||
git checkout -b develop upstream/develop | ||
git pull upstream develop | ||
``` | ||
* Далее нужно установить необходимые зависимости: | ||
* в консоли от имени администратора перейти в папку `gitsync` и запустить `opm install`. | ||
* Результатом будет установленные пакеты, необходимые для работы скриптов. | ||
* Этот шаг необходимо сделать всего 1 раз. | ||
|
||
> ВНИМАНИЕ: команды `opm` необходимо выполнять в обычном виндовом `cmd\far` , но не в bash-консоли, т.к. не сможет найти команду `opm` | ||
#### Штатная разработка/доработка | ||
|
||
##### Выбор задачи и предварительная подготовка | ||
|
||
* реализуйте функционал или возьмите в работу какую-то задачу | ||
|
||
* На основании ветки develop создаем новую ветку с номером задачи или кратким описанием | ||
* Например, `feature/issue-9999` | ||
``` | ||
git checkout -b feature/issue-9999 | ||
``` | ||
|
||
> Напоминаем, что все шаги git можно выполнять как из консоли git, так и из графического клиента для git (SourceTree, GitExtensions и т.п.) | ||
##### Изменения в плагинах/фичах/шагах/тестах | ||
|
||
* в каталоге `gitsync/features` добавьте новый `feature-файл`, если необходимо | ||
* в каталоге ./src реализуйте требуемый функционал | ||
* или прогоните тесты `opm run test` | ||
|
||
* **При готовности зафиксировать изменения** | ||
|
||
* В гите проверить необходимые изменения в исходниках и зафиксировать только их. | ||
|
||
Команды для программного добавления необходимых файлов в git | ||
|
||
* Смотрим, какие файлы изменились - `git status` | ||
|
||
``` | ||
Изменения, которые не в индексе для коммита: | ||
(используйте «git add <файл>…», чтобы добавить файл в индекс) | ||
(используйте «git checkout -- <файл>…», чтобы отменить изменения | ||
в рабочем каталоге) | ||
изменено: src/cmd/ПараметрыПриложения.os | ||
нет изменений добавленных для коммита | ||
(используйте «git add» и/или «git commit -a») | ||
``` | ||
|
||
##### Отправка изменений | ||
|
||
* Добавляем необходимые файлы в индекс | ||
* `git add src/cmd/ПараметрыПриложения.os ` | ||
* Фиксируем изменения с комментарием `git commit -m "Наш комментарий!"` | ||
|
||
* Отправляем все изменения своей ветки на github ```git push origin feature/issue-9999``` | ||
* Далее формируем `pull-request` в [интерфейсе github](https://github.com/oscript-library/gitsync/pulls) | ||
|
||
### Участие в архитектурных обсуждениях | ||
|
||
если вы методолог или архитектор | ||
|
||
* сделайте свой первый `pull-request`, в том числе в документацию | ||
* создайте обсуждение https://github.com/oscript-library/gitsync/issues с описанием противоречия | ||
* участвуйте, обосновывайте, приводите примеры | ||
* используйте ТРИЗ для построения непротиворечивых решений | ||
|
||
### Enterprise-поддержка | ||
|
||
если вы бизнесмен или менеджер | ||
|
||
* обратитесь по адресу `[email protected]` | ||
* заключите контракт на Enterprise-поддержку с гарантией по SLA и c контролем NPS | ||
* публикуйте любые запросы на доработку и консультацию - они будут выполнены или по ним будет выдан ответ в первом приоритете | ||
* на данный момент за последние год мы поддерживаем следующие медианы: | ||
* время реакции - 24 минуты, | ||
* время решения - 23 часа | ||
|
||
# Если ничего не понятно | ||
|
||
* используйте [форум XDD](https://xdd.silverbulleters.org) для того, чтобы задать вопрос | ||
* запишитесь на практические занятия по правильной разработке 1С | ||
|
||
```(c) oscript-library - последнее обновление: 14.01.2019``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
> Заполните шаблон обсуждения GIT (GitHub, GitLab, Vanessa Hub) | ||
```Gherkin | ||
Функционал: <Необходимый эффект> | ||
Как <роль пользователя> | ||
Я хочу <Необходимый функционал> | ||
Контекст: | ||
Дано <версия инструментария> | ||
И <полная версия 1С> | ||
и <конфигурация запуска> | ||
Сценарий: <ожидамое поведение> | ||
Допустим <Пример данных> | ||
Когда <Что-то нажимается или вызывается> | ||
Тогда <Что-то происходит> | ||
``` | ||
|
||
> Прикладывайте файлы скриншотов |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
--- | ||
name: Сообщение об ошибке | ||
about: если вы выявили ошибку - сообщите нам об этом | ||
|
||
--- | ||
|
||
**Описание ошибки** | ||
что конкретно происходит | ||
|
||
**Сценарий воспроизведения** | ||
Шаги по воспроизведению: | ||
1. Открыть '...' | ||
2. Нажать '....' | ||
3. Запустить '....' | ||
4. Где ошибка | ||
|
||
**Ожидаемое поведение если бы ошибки не было** | ||
'....' | ||
|
||
**Скриншоты** | ||
если применимо приложите скриншот | ||
|
||
**Окружение:** | ||
- Версия операционной системы: [например Ubuntu 18.04] | ||
- Редакция 1С платформы [например 8.3.12.1542] | ||
- Версия Gitsync [например 3.0.1] | ||
- Версия OScript [например 1.0.20] | ||
|
||
**Дополнительный контекст** | ||
|
||
Типовая или не типовая конфиугарация ? Включен ли режим защиты от опасных действий и т.д. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
--- | ||
name: Добавление новой функциональности | ||
about: предложение новой идеи или функциональности к разработке | ||
|
||
--- | ||
|
||
**Существует проблема** | ||
Описание существующей проблемы [...] | ||
|
||
**Хотелось бы иметь следующую функциональность** | ||
Вариант реализации [...] | ||
|
||
**Дополнительный контекст** | ||
Любая дополнительная информация | ||
|
||
<!--- | ||
Заявление от команды активных контрибьюторов | ||
Данный проект развивается силами нескольких людей последние 10 лет, разработка ведется на условиях краудсорсинга в связи с чем | ||
Если вы не собираетесь реализовывать данную функциональность сами, просьба идеи и предложения обсуждать на форуме в специализированном разделе https://xdd.silverbulleters.org/c/razrabotka или в рамках вашего контракта на поддержку OpenSource продуктов | ||
--> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
реализация # | ||
|
||
сделанные изменения: | ||
|
||
- | ||
- | ||
|
||
@oscript-library/Collaborators - пожалуйста, проверьте изменения и прокомментируйте их |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.