Skip to content

Instantly share code, notes, and snippets.

@maxp
Last active April 21, 2023 03:43
Show Gist options
  • Save maxp/b96f614bd2a08befba0087130b333832 to your computer and use it in GitHub Desktop.
Save maxp/b96f614bd2a08befba0087130b333832 to your computer and use it in GitHub Desktop.

Recommendations

Repository

В репозитории содержится программный код, ресурсные файлы, сопутствующая документация и другие файлы, необходимые для разработки/сборки/тестирования приложения.

README.md

Основные секции:

  • краткое описание модуля и его функций
  • сборка модуля: что необходимо, зависимости, команды
  • запуск приложения: окружение, настройки, команды, точки входа
  • варианты запуска тестового окружения
  • прочая информация по API либо ссылка на документацию

Source Control

В кодовую базу на должны попадать:

  • файлы конфигурации среды разработки
  • артефакты сборки
  • файлы, возникающие при работе программы (дампы, логи и т.п.)
  • ключи доступа к внешним ресурсам
  • внутренние секретные ключи

Branches

  • master - основная работающая и тестированная ветвь, обновляется только пулреквестами после ревью, на ее основе делаются release-ветки

  • dev - текущая стабильная ветвь разработки, должна собираться и запускаться, используется для прогона на стенде изменений из веток разработчиков, некоторая функциональность может быть временно ограничена

  • XX/NN-short-about-text - рекомендуемый формат ветви разработчика: инициалы, номер тикета, текст для пояснения о чем речь

Workflow

  • обсуждение задачи постановщиками и разработчиками
  • фиксация результатов обсуждения в виде новых тикетов (issue), текст тикета можно впоследствии редактировать, дополнять, комментировать
  • распределение тикетов между разработчиками
  • каждый разработчик отделяется себе ветвь от текущей стабильной
  • после внесения основной части кода делается пулреквест, который в процессе дополняется, обсуждается и исправляется
  • успешно протестированный пулреквевст мерджится в стабильную ветку
  • пулреквест закрывается
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment