Версионирование правил обмена в Git

Публикация № 683631 15.12.17

Разработка - Групповая разработка (Git, хранилище)

правила обмена git gitflow обмен данными XML

Статья рассказывает о принципах работы скриптов, позволяющих применять систему контроля версий git и подход gitflow для версионирования правил обмена.

Введение

Я думаю, что данная статья опоздала по времени своей публикации примерно на год-два. Именно тогда на Инфостарте была волна статей, касающихся возможностей "нетрадиционных" (для разработчиков в экосистеме 1С, прежде всего) способов версионирования исходных кодов конфигураций, обработок и всего остального. Примерно в то же время начался наш проект полноценного версионирования правил обмена между информационными базами 1С.

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

Основная идея

Перейдем к сути. Главная проблема ведения истории правил обмена - это единый файл. Версионировать его, конечно, можно, но всех возможностей gitflow уже не применить. В этом случае использование git ненамного отличается от содержания файла в виде макета в стандартном хранилище 1С, хотя и дает по сравнению с последним много плюсов. Тем не менее, исходя из публикации "Конвертация данных" + Git, становится понятно, что и такой вариант имеет место быть.

Следовательно, чтобы задействовать возможности git в части разрешения конфликтов с одним фалом (когда их по факту и нет), нужно этот многострочный файл разделить на более мелкие.

Что же мы видим, когда изучаем содержимое файла правил обмена? Мы видим фиксированную структуру XML-узлов. Это узлы ПравилаКонвертацииОбъектов, Алгоритмы, Запросы, Параметры, обработчики и др.

Логично разделить этот файл на несколько по именам узлов, чтобы все подчиненные элементы были перенесены в другие файлы. Дальше - больше. Как насчет выделения каждого Параметра, каждого ПравилаКонвертацииОбъекта (ПравилаВыгрузкиДанных, ПравилаОчисткиДанных), а также, Свойств и Значений в отдельные файлы? Хочется, чтобы два (и более, конечно) разработчика могли отредактировать два разных параметра и два разных свойства одного правила конвертации, а я потом мог это автоматически слить без конфликтов, которые обязательно будут при работе с единым файлом.

Реализация

Для реализации поставленной задачи прекрасно подошла библиотека Microsoft XML Parser и ее класс XML Document Object Model (DOM). Это известный большинству разработчиков правил обмена COM-объект MSXML2.DOMDocument. Он позволяет работать с XML-документом как с объектом, а также использовать XPath, модифицировать данные, извлекать любой подчиненный узел для вставки в новый самостоятельный объект и наоборот.

Таким образом, необходимо найти узлы и их коллекции, каждый самостоятельный элемент записать в файл, а исходную структуру максимально очистить от вынесенных из ее подчинения элементов. Казалось бы, ничего сложного. Но все было бы очень просто, если бы не множество мелких нюансов. Вот один из них.

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

Сравнение двух вариантов использования коллекции

Такие различия делают код менее стройным и понятным, приводят к появлению дополнительных ветвлений, которых можно было бы избежать.

Или другой пример. При загрузке правил обмена в конфигурацию Конвертация данных им присваивается уникальный идентификатор (это же элемент справочника, куда ж без него?). А при сохранении измененного файла этот идентификатор прописывается в узел Ид корневого элемента ПравилаОбмена (см. первый скриншот). Если разработчиков несколько, а их несколько, то при слиянии мы всегда будем получать конфликт, хотя от этого как раз и уходили. Поэтому было принято решение ничего не значащий реквизит просто очищать. Та же участь постигла элемент ДатаВремяСоздания. Зачем хранить дату в файле, когда есть история в git?

А еще были проблемы с непечатаемыми символами в наименовании объектов, отличающимися символами перевода строки внутри разных элементов одного файла, проблема с неправильной работой правил для платформы 7.7 и некоторые другие.

Результат

Собственно, при помощи подхода, изложенного выше, удалось разделить выгружаемый из Конвертации данных файл на максимально мелкие фрагменты. При этом структура каталогов и расположение файлов максимально повторяет выгрузку обычной конфигурации/расширения в XML. В корне каталога располагается файл ПравилаОбмена.xml, а для каждой коллекции объектов создается отдельный каталог. Все обработчики выгружаются в отдельную папку Ext в папку того объекта, к которому они относятся. На скриншоте представлены глобальные обработчики правил конвертации.

Структура каталогов первого уровня

Все Параметры располагаются в одном каталоге, так как у них отсутствует иерархия и дополнительные свойства. Это, пожалуй, самый простой пример парсинга.

Немного сложнее разбираются на файлы Алгоритмы и Запросы, так как у  каждого такого элемента есть не только определяющие свойства, но и несущее основной смысл подчиненный элемент Текст. Последний может быть внушительных размеров, и поэтому хранится отдельно.

И самая сложная ситуация это ПравилаКонвертацииОбъектов. В этом случае у объекта помимо служебных свойств, которые хранятся в одноименном корневом файле, могут присутствовать Обработчики (папка Ext), а также наверняка будут использоваться свойства-реквизиты. Последние из-за недопустимых символов в наименовании (которое может быть еще и пустым) приходится хранить под номерами (он же соответствует коду элемента справочника, поэтому повторяться они не могут). На скриншоте показано, что у свойства с кодом 30 есть еще обработчик ПередВыгрузкой.

Полученные мелкие файлы, каждый из которых по факту представляет собой некий объект со своими свойствами, отлично версионируются. Вероятность возникновения конфликтов при слиянии снижается значительно.

Разработчик после получения изменений "собирает" правила обмена и загружает их в Конвертацию данных, а по окончании работы выполняет "разбор" и фиксирует изменения. При этом существует возможность и непосредственного редактирования. В структуре каталогов найти нужный файл проще, чем в одном большом xml-файле. Можно открыть нужный обработчик или нужное свойство и внести исправления без участия специализированной конфигурации.

Вместо заключения

Системные требования

Скрипт разрабатывался для работы под операционной системой Microsoft Windows и гарантированно работает на корпоративных версиях 7, 8 и 10. Сам скрипт написан на OneScript.

Планы по развитию проекта

В последнее время проект не развивается, хотя есть несколько направлений, которые могут его улучшить. Эта часть посвящена мыслям по этому поводу.

  • Проекту решительно не хватает автоматизированных тестов. Ни один публичный проект не должен существовать без этой очень важной составляющей.
  • При выполнении скриптов никак не обрабатываются ошибки. Из-за чего приходится контролировать результат разбора "глазами". Может так случиться, что разбор завершился ошибкой, не успев начаться, тогда все файлы git считает удаленными. С непривычки можно такой результат и запушить.
  • На момент публикацию разбираются не все элементы XML-файла, хотя, возможно, кому-нибудь они очень будут нужны.
  • Скрипты не работают автоматически (не используется хук precommit). Приходится запускать bat-ники вручную (хотя мы, на самом деле, уже привыкли и не жалуемся).
  • Возможно, стоит разработать библиотеку, которую можно будет встраивать в Конвертацию данных и выполнять разбор прямо из конфигурации.

Исходный код проекта опубликован в репозитории на GitHub. Поэтому пользуйтесь, участвуйте и изучайте новое!

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. khorevaa 108 15.12.17 10:37 Сейчас в теме
2. dmpas 416 15.12.17 10:37 Сейчас в теме
Огонь!!!! Вот ещё буквально пару месяцев и я бы сам такое сел писать!!!
3. artbear 1428 15.12.17 10:52 Сейчас в теме
4. artbear 1428 15.12.17 10:53 Сейчас в теме
Схема с разделением одного большого файла на несколько более мелких/детальных очень удобна.
Юзали ее в разных вариантах.
Самый ранний, который я помню - разбор глобального модуля 1С 7.7 на файлы процедур/функций после разбора gcomp для выгрузки в cvs/snv. 2003 год
5. tsukanov 15.12.17 12:46 Сейчас в теме
Прикольно. Спасибо )

А эту задачу нельзя решить с помощью подходящего инструмента мёрджа?
8. bforce 477 15.12.17 21:53 Сейчас в теме
(5)
А эту задачу нельзя решить с помощью подходящего инструмента мёрджа?

Конечно можно, но нужно помнить два важных момента.

1. Человек, который выполняет слияние должен четко понимать что происходит и делать безошибочный выбор в сторону того или иного фрагмента. Причем делать это он должен безошибочно.

2. Дело в том, что при загрузке вы Конвертацию данных элементам справочников каждый раз присваиваются новые идентификаторы, и при формировании общего файла эти элементы выбираются с сортировкой по ссылкам. Ссылки у всех разработчиков разные, а значит и сортировка элементов не будет никогда соответствовать друг другу. Так что слияние двух даже самых мелких изменений превращается в очень сложную задачу.

Второго пункта можно избежать, если перед слиянием или в момент коммита будет выполняться сортировка правил (у меня в репозитории есть шаблон сортировки). Иначе, мне кажется, нужно обладать довольно уникальными способностями, чтобы переварить это все в голове (особенно, когда файл у вас на 50 тыс. строк).
9. tsukanov 15.12.17 22:41 Сейчас в теме
(8) Я немного о другом. Мне кажется можно сделать дифф (утилиту), который будет игнорировать сортировку и прочее. Ну и соответственно мёрдж на основе этого диффа. По аналогии как конфигуратор модули сравнивает/объединяет по процедурам.
10. bforce 477 16.12.17 12:23 Сейчас в теме
(9)
По аналогии как конфигуратор модули сравнивает/объединяет по процедурам.

На самом деле, в самой конвертации имеется инструмент для сравнения правил обмена. Причем это действительно похоже на сравнение/объединение конфигураций с возможностью выбора нужных для объединения элементов.

Так что, да, можно использовать и этот метод. Однако правильность объединения придется всегда контролировать глазами, так как встроенный механизм не позволяет сделать двухстороннего сравнения. Поэтому работать с git лучше.
12. tsukanov 16.12.17 14:19 Сейчас в теме
(10) Действительно. Я уже и забыл, что в конвертации есть это. Спасибо что напомнили )

Посмотрел тут: https://infostart.ru/public/177339/
Двухстороннее сравнение - это three-way merge? Судя по статье оно там есть.
13. artbear 1428 16.12.17 14:55 Сейчас в теме
(12) Двухстороннее это не three, это two :)
14. tsukanov 16.12.17 15:10 Сейчас в теме
(13) Ну я пытался угадать )) А что за зверь тогда? Просветите, плиз )
15. bforce 477 16.12.17 21:52 Сейчас в теме
(12)
Обычно двухстороннего сравнения достаточно (в конвертации как раз такое), чтобы понять есть ли конфликт, но понять это нужно будет в голове. Дважды измененные (как при работе на поддержке от конфигурации поставщика) стандартный инструмент не показывает. Нужно будет все измененные объекты где-то зафиксировать, чтобы потом сравнить с таким же списком из другой задачи или сравнивать по одному.
В общем, сомнительное удовольствие. Но, если нравится, то пожалуйста. Меня на такую монотонную работу надолго не хватает. А если она еще еженедельная/ежедневная, то ...
16. tsukanov 16.12.17 22:33 Сейчас в теме
(15) Понятно. Но вообще странно, что нет фильтра по дважды измененным. Мне кажется его там добавить труда не составит.
6. olegtymko 843 15.12.17 15:21 Сейчас в теме
Идея очень хорошая! Жирный плюс. Хранение в таком же виде правил регистрации пока не планируется?
7. bforce 477 15.12.17 21:40 Сейчас в теме
(6)
Хранение в таком же виде правил регистрации пока не планируется?

Мы их в своей работе не используем, так как выгружаются огромным набором за период. Поэтому такой задачи не стояло, но ее можно решить тем же способом.
11. dmpas 416 16.12.17 12:27 Сейчас в теме
а ещё подсветка синтаксиса на bsl-файлах отработает, а на bsl внутри xml лесом пошлёт. :) мелочь, а приятно.
ну и git blame отдельно по каждому куску.
17. kuzyara 1488 18.12.17 14:27 Сейчас в теме
Почему не префиксы вместо искусственной иерархии ext?
Будет ли такое же версионирование декомпилированных форм?
20. bforce 477 18.12.17 22:40 Сейчас в теме
(17)
Почему не префиксы вместо искусственной иерархии ext?

Только из-за того, что уже есть "снандарт" выгрузки конфигураций и расширений. Не более.
Придумать тут можно самые разнообразные варианты, но это будет лично мое. Потом кто-нибудь предложит свою версию, которая делает по другому. Поэтому проще опереться на уже придуманный и используемый подход.

К тому же, если у меня 10 ПКО в одной группе и на каждый созданы все обработчики (8 штук), то это уже 90 файлов в одном каталоге. Не очень удобно.

(17)
Будет ли такое же версионирование декомпилированных форм?

Не понял. Какие формы в правилах обмена?


(18)
А может проще из КД сразу выгружать дополнительно в нужном формате?

Со стороны конечного пользователя-разработчика, конечно, проще. И это будет гораздо удобнее. Но только для него одного. Но есть и минусы, которые перевесили.
1. Сложность. Надо очень аккуратно впилиться в типовую конфигурацию и ничего при этом не поломать, ни в ней, ни в своей логике разбора. Это сложнее, чем отдельный скрипт.
2. Зависимость. Если смотреть не только на разработчика, а на ПМ-щика, автоматизированное тестирование и деплой, то тут дополнительная зависимость от КД ни к чему. Лишние действия по сбору и разбору. В КД, кажется, нет Параметров запуска, чтобы что-то автоматизировать.
Но реализовать такое, конечно, хотелось. Какой-нибудь поставкой (чтобы легко интегрировать), выделить обособленным модулем, расставить где нужно свои вставки.
18. acsent 1189 18.12.17 15:24 Сейчас в теме
А может проще из КД сразу выгружать дополнительно в нужном формате?
19. Totoro 568 18.12.17 21:13 Сейчас в теме
21. stas_ganiev 1673 17.02.18 07:41 Сейчас в теме
Круто! Очень круто!!!
За упоминание моей работы спасибо! :)
22. AlexWhite 195 23.03.18 08:57 Сейчас в теме
Спасибо! Если захотите что-то еще усовершенствовать в этом решении и понадобится финансирование, обращайтесь!
Оставьте свое сообщение

См. также

Получаем статистику по git-репозиторию в разрезе разработчиков

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) OneScript Бесплатно (free)

Итак! Представим, что наступил момент, когда разработка через исходный код реализована на предприятии в полном объеме. Мы разрабатываем в EDT или конфигураторе (но выгружаем конфигурацию в исходный код), версионируем внешние отчеты и обработки и расширения, собираем релизы, проверяем код статическим анализом, в разработке царит гармония и мир. Красота! Но менеджерам этого мало, всегда хочется чего-то еще, и вот мне прилетает задача - дай статистику по вкладу в код каждого разработчика.

13.03.2023    718    ardn    3    

22

Формула успешного внедрения DevOps и Agile в 1С: от неудачи к неудаче без потери энтузиазма

Групповая разработка (Git, хранилище) Управление проектом Бесплатно (free)

На конференции Infostart Event 2021 Post-Apocalypse выступил директор практики БИТ:ERP компании Первый БИТ Глеб Стальной. В ходе доклада он рассмотрел трансформацию проектного подхода в продуктовый, рассказал про имплементацию «современных» практик DevOps и продемонстрировал инструменты для разработки, взаимодействия с бизнесом и клиентами, применяемые в его команде.

27.02.2023    692    glebushka    1    

6

Кровь, пот и GIT

Групповая разработка (Git, хранилище) Бесплатно (free)

Ведущий разработчик 1С Андрей Карпов на конференции Infostart Event 2021 Post-Apocalypse поделился ошибками, которые совершают новички в работе с GIT. В докладе четыре кейса с пошаговыми инструкциями, которые позволят не допускать конфликтов в разработке.

17.01.2023    5602    karpik666    46    

61

Прокси хранилища 1С (IIS, OneScript)

Групповая разработка (Git, хранилище) OneScript DevOps и автоматизация разработки Платформа 1С v8.3 Россия Бесплатно (free)

Избавляемся от версионной зависимости, проверяем комментарии, вызываем веб-хуки, делаем красивые пути. И все это на привычном IIS и понятном OneScript.

08.12.2022    4764    kamisov    20    

81

Что, если Continuous Integration – это прежде всего практика, а не набор инструментов?

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) Бесплатно (free)

Рано или поздно многие компании приходят к практикам DevOps. И начало этому – Continuous Integration. О том, что происходит в команде специалистов 1С, когда они переходят на Git, и почему простое внедрение CI-инструментов не решает проблему подходов к разработке, в докладе на Infostart Event 2021 Post-Apocalypse рассказал руководитель компании ПрогТехБизнес Александр Анисков.

07.12.2022    1366    vandalsvq    0    

23

Готовые переносы данных из различных конфигураций 1C Промо

Рекомендуем готовые решения для переноса данных из различных конфигураций 1C. C техподдержкой от разработчиков и гарантией от Инфостарт.

Управление хранилищами без боли

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) Бесплатно (free)

Когда хранилищ много, возникает вопрос удобного управления ими. Андрей Овсянкин на онлайн-митапе «Инструменты автоматизации рутины в 1С-разработке» рассказал, как настроить перенос хранилища на новую версию платформы без перепрописывания путей у каждого разработчика, и как безболезненно обеспечить для хранилища запрет коммита с пустым комментарием.

28.11.2022    6245    Evil Beaver    11    

85

Технология доработки типовой конфигурации с использованием конфигуратора

Групповая разработка (Git, хранилище) Бесплатно (free)

Как обычно происходит процесс доработки типовой? Разворачивается и используется рабочая база из какой-то типовой поставки 1С (БП/ERP/ЗУП и т.д.). Далее бизнес постоянно приносит требования по доработке типового функционала (отдельный вопрос, зачем это нужно). Возникает задача организовать постоянное изменение типовой конфигурации группой программистов. На мой взгляд, это довольно частая задача. Хотелось бы рассмотреть возможные варианты ее решения. Нигде не нашел упоминаний о подходах решения такой задачи, хотя, думаю, многие работают в таком режиме.

16.07.2022    1621    partizand    13    

7

Отражаем хранилище в репозиторий git, Jenkins'ом

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Описание приемов по настройке копирования хранилища 1С в репозиторий git. С помощью gitsync, под управлением Jenkins.

16.06.2022    1496    ImHunter    1    

19

Работа с хранилищем конфигурации с разными версиями конфигуратора

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Бывают ситуации (в моей практике - постоянно), когда нужно работать с одним хранилищем конфигурации из-под разных версий платформы. Предлагаю свой вариант решения.

08.06.2022    1474    curdate    10    

7

Скрипт перепривязки базы к хранилищу конфигурации

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Пример скрипта для перепривязки базы к хранилищу конфигурации, используя Python.

17.04.2022    1208    malikov_pro    0    

12

Видеокурс-практикум: как подготовить и написать ТЗ, ЗНР, ЧТЗ. Промо

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

3 500 рублей

Выгрузка версии хранилища в XML файлы

Файловый обмен (TXT, XML, DBF), FTP Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Скрипт, выполняющий выгрузку произвольной версии из хранилища в XML.

17.03.2022    1023    kraynev-navi    2    

7

Стек технологий для 1С

Инструментарий разработчика Рефакторинг и качество кода Групповая разработка (Git, хранилище) Механизмы платформы 1С Бесплатно (free)

Стек технологий, которые могут быть полезны разработчику на 1С и около 1С. По каждой технологии постарался объяснить, зачем она нужна и с чего начать изучение, если заинтересует.

29.11.2021    29445    mrXoxot    63    

417

Девопсы в 1С: микросервис распознавания штрихкодов

Групповая разработка (Git, хранилище) Бесплатно (free)

Распознавание штрихкода из сканированного документа в PDF.

09.08.2021    2408    alexey_kurdyukov    8    

9

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Как подключиться к хранилищу конфигурации на сервере за NAT, если есть доступ по RDP?

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

В статье находится инструкция по подключению базы 1С к хранилищу конфигурации, если хранилище не опубликовано в интернет, но опубликовано по TCP в локальной сети клиента.

01.06.2021    4185    Dipod    13    

53

Мастер-класс: Реализация цикла CI/CD на практическом примере с использованием системы Тестер

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

На онлайн-митапе Инфостарта «DevOps в 1С» выступил Дмитрий Решитко – руководитель отдела разработки в компании C.T. Consultants Inc. Дмитрий провел мастер-класс, в котором продемонстрировал, как создавать новую функциональность в конфигурации с одновременным использованием инструмента тестирования и реализовать автоматизированное тестирование конфигурации при помещении кода в репозиторий на GitLab.

31.05.2021    2413    grumagargler    0    

18

Технология разветвленной разработки конфигураций 1С

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Вся групповая разработка любой организации, где работает более 2-х программистов, в превосходящем большинстве случаев строится вокруг хранилища конфигурации. Те из нас, кто обращался к стандартам разработки 1С как минимум раз в жизни и читал их полностью (а может, и просто слышал от коллег), наверняка знают, что существует «Технология разветвленной разработки конфигураций» https://its.1c.ru/db/v8std#content:709:hdoc но не все поняли, как на самом деле эту замечательную вещь применять на практике, а кто-то понял и вероятнее всего думает, что «это к нам не относится, командная разработка по такой технологии в нашей организации не получится в силу определённых причин и потому применять её, к сожалению, я один не могу и не буду», до конца не разобравшись во всех аспектах, но это ошибочное мнение. В этой статье я постараюсь описать свой опыт, рассказать о преимуществах использования данной технологии, дать понять, что технология разветвленной разработки конфигураций на самом деле вещь индивидуальная и каждый для себя решает сам, применять её или нет, а также внести понимание, что у вас вообще нет никакой зависимости от своих коллег, работая в хранилище конфигурации при использовании этой технологии.

19.05.2021    9791    sinichenko_alex    45    

127

Ненавязчивая локальная разработка с traefik2, docker и letsencrypt

Групповая разработка (Git, хранилище) DevOps и автоматизация разработки Бесплатно (free)

Перевод статьи по проксированию HTTP траффика до сервисов развернутых в docker контейнерах. Оригинал от 24.09.2020.

16.05.2021    4997    malikov_pro    0    

8

Хранилище значения. Заметки

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Некоторые подробности про общеизвестный инструмент.

03.11.2020    26305    Yashazz    15    

49

Распознавание и загрузка документов в 1С Промо

Универсальная программа-обработка для распознавания любых сканов или фото первичных документов в 1С (счета-фактуры, УПД, ТТН, акты и тд). Точность распознания до 98%.

от 11 рублей

Технология разветвлённой разработки, использующая git, ci/cd

Групповая разработка (Git, хранилище) 1С:Франчайзи, автоматизация бизнеса Россия Бесплатно (free)

Адаптация и расширение требований к разветвлённой разработке с использованием git и ci/cd, основанное на стандартах 1С

24.02.2020    9323    check2    10    

74

GitSync 3.0. Шпаргалка по использованию

Групповая разработка (Git, хранилище) Бесплатно (free)

В новой версии GitSync помимо появления новой функциональности, изменилась строка вызова приложения и часть функциональности реализована посредством плагинов. В заметке описывается новый формат строки вызова и принцип подключения плагинов.

26.11.2019    15985    VKislitsin    48    

116

Минимизация изменений в коде / Использование Хранилища общих настроек

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

14.11.2019    3508    biimmap    34    

2

История одного проекта обновления

Групповая разработка (Git, хранилище) Платформа 1С v8.3 1С:Управление торговлей 11 Бесплатно (free)

История одного проекта обновления, хранилище, групповая разработка.

06.11.2019    6090    vasilev2015    20    

23

Git для 1С-ника и другие технологии групповой разработки

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

У многих специалистов в отношении Git сложились стереотипы, мешающие начать работу с этим прекрасным и удобным инструментом. Почему его не стоит бояться, и чем он может упростить жизнь 1С-никам, рассказал архитектор ГК «Невада» Станислав Ганиев.

28.10.2019    16391    stas_ganiev    17    

63

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Переход на разработку с хранением в Git, часть 1, подготовка репозитория

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Описываю свой опыт переноса разработки в git в малой группе. В тех статьях, которые уже есть, описывается полная цепочка. Думаю своими статьями снизить порог входа в достаточно важную часть разработки.

29.09.2019    10130    malikov_pro    14    

108

Отказ от использования хранилищ 1С, переход на Git.

Групповая разработка (Git, хранилище) Бесплатно (free)

Валерий Максимов в своем докладе на конференции INFOSTART EVENT 2018 EDUCATION делится опытом перехода нескольких команд (более 100 разработчиков) от использования хранилищ 1С на системы контроля версий Git.

25.07.2019    25193    theshadowco    33    

88

Как начать работать с Git

Групповая разработка (Git, хранилище) Платформа 1С v8.3 1С:Франчайзи, автоматизация бизнеса Россия Бесплатно (free)

Если Вы 1С программист, то обязательно наткнетесь на людей, рассказывающих о OScript, DevOps, EDT, SilverBulleters и так далее. Сейчас уже нельзя скрыться от этой информации. Так же было и со мной. В корне всего этого зоопарка лежит понимание и умение работать с Git (Распределённая система управления версиями). Укрупненной информации о ней много, Вы легко её нагуглите сами. В этой статье я старался собрать основные команды, определить их последовательность выполнения и привести краткий пример. Попробуйте выполнить все команды, и Вам станет проще разобраться с остальными программами. Удачи!

29.06.2019    10727    johnnyshut23    34    

64

Исправляем медленное выполнение операций с хранилищем конфигурации

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В статье описан способ решения проблемы долгого захвата/помещения объектов в хранилище конфигурации

26.05.2019    17931    tormozit    21    

93

Git-репозитории для 1С-кода (опыт использования при небольших проектах)

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Инструкции по взаимодействию с Git-репозиторием, которые писались для тех наших программистов, которые вообще никогда не работали с Git (руководства в духе "Как получить код из git-репозитория?", "Как отправить код в git-репозиторий")...

28.03.2019    35662    ellavs    90    

250

1СПАРК РИСКИ. Сервис оценки благонадежности контрагентов. Промо

СПАРК помогает предотвратить мошенничество со стороны компаний и предпринимателей, благодаря актуальным сведениям о компаниях и системе выявления факторов риска.Сервис позволяет управлять налоговыми рисками и комплексно оценивать благонадежность контрагентов.

Как писать понятные коммиты

Групповая разработка (Git, хранилище) Россия Бесплатно (free)

Как писать сообщения коммитов так, чтобы потом не было мучительно больно.

06.03.2019    15566    Scorpion4eg    35    

76

Ошибки при работе с хранилищем конфигурации и способы их решения

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

В статье собраны наиболее распространенные ошибки при работе с хранилищем конфигурации и способы их обхода и решения.

01.03.2019    92281    Смешной 1С    39    

179

Git + 1С. Часть 2. Реализация Git workflow в 1С-разработке по шагам

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В этой части мы рассмотрим наиболее распространённую схему workflow при групповой разработке с использованием Git. Как приступить к доработке по поставленной задаче; исправить ошибку, обнаруженную на этапе тестирования; отправить свой код на слияние в предстоящий релиз; и т.д. Постараемся охватить большинство задач, составляющих основной цикл разработки

28.01.2019    39210    stas_ganiev    32    

157

Еще раз про хранилище, или проблемы, с которыми мы столкнулись на практике

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Хранилище - необходимый инструмент для групповой разработки, но иногда встречаются не очень очевидные вещи, о которых и хотелось бы поговорить в данной публикации.

25.01.2019    3502    Lucifer93    2    

7

Git + 1С. Часть 1. Как подключиться к команде разработки и начать использовать Git

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Первая статья из цикла инструкций по работе с Git в 1С-разработке. Рассмотрим, как настроить рабочее место, как получить свою "копию" проекта для разработки и приступить к полезным действиям. Все примеры будут изложены в рамках трёх практических кейсов: 1. Моя команда дорабатывает типовую конфигурацию, использует приватный репозиторий на BitBucket, в котором версионируются внешние отчеты/обработки, расширения конфигураций и правила обмена; 2. Я участвую в стартап-команде, которая разрабатывает свою конфигурацию с использованием Git и GitLab; 3. Я принимаю участие в развитии OpenSource-продукта на GitHub как заинтересованный разработчик (контрибьютор).

18.10.2018    143833    stas_ganiev    90    

400

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Одновременное использование хранилища и расширений

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Шастун Алексей поднимает вопрос одновременного использования хранилища и расширений. В статье рассмотрены плюсы и минусы хранилища и расширений, а также возможные варианты их использования. Также автор описывает два практических кейса по организации одновременного использования хранилища и расширений 1С в проектной группе из трех и более разработчиков.

23.08.2018    15465    shaa2    3    

17

Повышаем эффективность разработки правил обмена

Групповая разработка (Git, хранилище) Обмен между базами 1C Платформа 1С v8.3 1С:Конвертация данных Бесплатно (free)

Как повысить скорость и качество разработки правил обмена? Как вести групповую разработку правил обмена? Как облегчить сопровождение правил обмена после передачи в эксплуатацию? Об этом и многом другом вы можете узнать из этой статьи.

25.06.2018    32080    olegtymko    49    

152

Групповая разработка конфигураций в крупном холдинге

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

О чем мы сегодня поговорим? • О становлении и развитии групповой разработки конфигураций 1С в крупном холдинге с использованием хранилища конфигураций. • Обсудим практически все аспекты использования хранилища в командной разработке. • Я расскажу про те методы и идеи, которые мы пробовали использовать, какие используем до сих пор, от каких отказались и почему.

15.08.2017    26329    stas_ganiev    17    

78

Поиск несериализуемых значений при помещении в хранилище

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

В статье разобран пример, как найти несериализуемые значения в случае помещения в хранилище коллекций, содержащих вложенные элементы. В качестве хранилищ рассмотрены временное хранилище значений и переменные типа ХранилищеЗначения.

02.03.2016    27088    balanton    2    

14

Работа с хранилищем конфигураций из командной строки

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Бесплатно (free)

Данное изложение на примерах демонстрирует работу с хранилищем конфигураций из пакетного режима

22.04.2014    20554    Franco    12    

26