Профессиональная разработка в 1С:EDT + Git и современные подходы к управлению версиями и качеством кода Этот курс – первый в серии курсов про DevOps нормальным языком – как оно на самом деле работает, зачем, почему именно так, и как на это все перейти… Но сначала – несколько слов о чем речь… 28% технических докладов на ИС 2021 – про командную разработку, BDD / TDD, управление версиями, тестирование, контроль качества кода, CI/CD и т.д. Инфостарт – открытая площадка, где специалисты и команды делятся тем, что для них сейчас актуально. Почему каждая четвертая команда выносит эту тему? – потому что продукты стали сложнее, проекты стали сложнее, в группах разработки – по 10-20 человек, есть по-проектно привлеченные специалисты, плюс разработчики от заказчика, источников потенциальных ошибок куча, все нужно проверять, сводить и деплоить… Каждая команда ищет, как увеличить скорость разработки – и при этом уменьшать количество ошибок. Как делать разработку удобнее, автоматизируя задачи на поиск багов, коммуникацию, бэкапы, отладку и т.д. Как запустить нормальные, отработанные всем миром практики тестирования, быстрого деплоя фиксов и так далее. Вам нужен этот курс, если вы: Внедряете или используете тестирование и ревью кода — EDT даст вам платформу для разработки, возможность подключать удобный плагин модульных тестов, а Git — инструментарий для хранения, контроля и ревью кода. Не хотите потерять код при обновлении — с Git вы гарантированно сохраните всю историю разработки и сможете восстановить любое зафиксированное изменение. Испытываете сложности при работе с обработками — EDT + Git позволяют версионировать и анализировать актуальность обработки “на лету” с учетом изменений основной конфигурации (проекта). Устали проверять расширения — EDT может “на лету” проверять все расширения на ошибки с учетом изменений в зависимых проектах – и делает это лучше, чем проверка применимости в Конфигураторе. Ну или ставить проверки по ним на паузу : ) Не можете найти нужное изменение в Хранилище — Git дает поиск по истории, вплоть “когда и кем была внесена искомая строка кода”. Найти баг – а так же кто и когда его занес. Устали спрашивать коллег, кто, зачем и какие изменения внес в код, так как хранилище не отвечает нормально на эти вопросы, тем более, что нет хранилища для внешних обработок. Наняли нового сотрудника — и вы не хотите, чтобы он сразу вливал свои изменения в ядро, а хотите устроить вычитку кода разными сотрудниками. Работаете с 2-3-4 конфигурациями — в EDT вы можете открыть неограниченное число конфигураций / расширений / обработок в одной области и вам будет легче избегать ошибок при интеграции. Стремитесь увеличить скорость работы команды — покажем, как с помощью 1С:EDT и Git перестать тратить время из-за частых ошибок, неудобных инструментов и плохой коммуникации. Пишите на 2 языках программирования — вы получите такую же удобную среду разработки в 1C, как и в других языках, и сможете показать свои разработки в GitHub. Хотите работать в топовых командах разработки — EDT и/или Git уже используют команды компаний 1С, Первый Бит, Рарус, OZON, Финтех Решения, IRP Team… Хотите версионировать обработки, расширения, конфигурацию — причем так, чтобы вы могли откатиться на месяц назад, и получить совместимые версии обработок и расширений с той версией конфигурации. Работаете с тестовой базой на 100Гб и решаете несколько задач — не редкий случай, когда база данных тестовая одна, и разработать надо параллельно несколько задач. Git вам с этим отлично поможет. Нанимаете сотрудников на фрилансе — Git поможет вам проанализировать изменения и внести их безопасно для вашей разработки. Строите работу по мировым практикам — тут уже не обойтись без методик работы с Git (GitHub flow, GitFlow, GitLab flow) и т.д. Это - необходимый базис для командной разработки Использование 1C:EDT и Git — первый шаг к практикам DevOps в мире 1С. Эти технологии позволяют: Включить в процесс тестирование и ревью кода, использовать гибкие методологии разработки. Уменьшить количество ошибок за счет анализа кода «на лету» (а также избежать потерь денег и репутации из-за этих ошибок). Свести к нулю потери наработок в ситуациях, когда, например, кто-то обновляет базу данных/код затер коллега/рухнул конфигуратор. Сделать написание кода легче за счет синтаксического анализа “на лету” и удобного инструментария среды и плагинов. Сделать процесс разработки прозрачным и понятным. Не будет ситуаций, когда неясно, кто, когда и зачем внес изменения в код. Расширить возможности окружения за счет плагинов — у вас появится дополнительная проверка качества кода, работа с CI контуром, просмотр задач из Jira и т.д. Особенности курса Этот курс — выжимка реального опыта командной разработки в EDT и запуска этих практик в нескольких командах. Это НЕ “учебное видео на идеальных ситуациях”. Здесь рассматривается реальное применение технологии, со всеми особенностями и внештатными ситуациями. Курс подойдет и для разработчика-одиночки, чтобы быть принятым в нормальную группу разработки, и для руководителя большой команды, чтобы новички вливались быстро. Мы рассмотрим все настройки EDT и Git: от базовых стартовых возможностей до глубокой кастомизации под нужды команды. Возникающие ошибки не скрываем, а анализируем. Мы научимся быстро решать все сложности, которые у вас могут возникнуть во время работы в EDT и Git. В курсе мы используем английский интерфейс EDT и Git, английские термины DevOps. Это даст вам преимущество в работе с другими языками программирования, в смешанных командах и международных компаниях. Для простоты используем вставки из русского интерфейса. Спойлер: Содержание: Содержание: Детальное содержание курса Модуль 1. Быстрый старт в 1С:EDT Изучив этот модуль, вы узнаете: Как решать проблемы с установкой 1С:EDT Как создавать рабочие места Как импортировать конфигурации, выполнять их отладку и обновления В чем ключевое различие между конфигуратором и 1С:EDT Темы занятий модуля: Установка EDT Рабочие области Проекты Работа с исходниками Конфигурации запуска Отладка в EDT Модуль 2. Знакомство с интерфейсом и функционалом 1С:EDT Изучив этот модуль, вы узнаете: Какие у 1C:EDT есть возможности для адаптации под нужды команды и как использовать весь их потенциал Какие существуют утилиты для 1С:EDT и как их использовать Где найти плагины для 1С:EDT и как их установить Темы занятий модуля: Меню Файл Меню Редактировать Меню Навигация Меню Запуск Меню Окно > Параметры Панели Общие Панели 1С:Предприятие Панель Отладка Установка плагинов через магазин Установка плагинов из других источников Модуль 3. Особенности работы с 1C:EDT Изучив этот модуль, вы узнаете: Как решать типовые простые кейсы, такие как выделение куска кода в переменную и ее переименование Как решать глобальные кейсы, такие как обновление конфигурации через поставку обновления Какие задачи надо решать через 1С:EDT, какие — через конфигуратор и как между ними осуществлять перенос изменений Темы занятий модуля: Ограничения 1С:EDT по отношению к конфигуратору Обновление версии проекта 1С:EDT Полезные сочетания клавиш в 1C:EDT Доработка простого функционала в 1C:EDT Перенос изменений из 1C:EDT в конфигуратор и обратно Трехстороннее сравнение проектов Рефакторинг: переименование переменных, выделение процедур, генерация комментариев, преобразование кода в переменные. Модуль 4. Учимся работать с Git Изучив это занятие, Вы узнаете: Что такое Git, как применять его в разработке и других областях Как создавать репозитории, фиксировать и отслеживать изменения файлов Как работать с ветками и задачами Как работать с запросами на слияние и решать конфликты слияния в Git Какую методику выбрать и как внедрить ее в командной разработке Какие тонкости есть при разработке с помощью Git без 1C:EDT Темы занятия: Git. Установка и создание репозитория Пример работы с Git Взаимодействие Git-клиентов Конфигуратор и Git Ветвление в Git Конфликты слияния в Git Регистрация в Git-сервисе Локальный и облачный Git Задачи в GitHub Применение задач в GitHub Варианты объединения веток Запросы на слияние. Pull Request Анализ запросов на слияние Зачем нужен Fork Workflow (методики работы с Git) Модуль 5. GIT+EDT Изучив это занятие, Вы узнаете: Как доставлять свой код в публичные репозитории Как переносить историю из хранилища в Git в формате 1C:EDT Как работать в 1C:EDT c Git над тяжелой конфигурацией на примере 1C:ERP Темы занятия: Git + 1C:EDT. Contributor GitConverter. Ручное поднятие версии проекта GitConverter. Проблемы локали. Выгрузка в Git 1C:ERP. Разворачиваем 1C:ERP 1C:ERP. Создание репо, коммитов, веток 1C:ERP. Git LFS 1C:ERP. Импорт проекта 1C:ERP. Выводы