1С: Gitter 1.1 (Хранилище 1С => Git)
Разработка - Инструментарий разработчика
Благодарности и использованные проекты
Был взят проект //catalog.mista.ru/public/273126/ и допилен под собственные нужды. Автор проекта согласился на отдельную публикацию, но плюсиков ему не забудьте отсыпать.
Так же в проект были внедрены Инструменты Разработчика //catalog.mista.ru/public/15126/ (Туда тоже плюсиков отсыпьте) и использован V8Unpack //catalog.mista.ru/public/15695/ (в cf его нет, качать отдельно)
Исходные коды опубликованы в https://github.com/Stepa86/1C-Gitter . Последний актуальный cf всегда тут https://github.com/Stepa86/1C-Gitter/blob/master/cf/Gitter.cf
Зачем это все?
Git решили использовать ровно для двух вещей. Для код-ревью и более удобной работы с историей. Для этого идеально подошел https://bitbucket.org . Для команды до 5 человек его можно использовать бесплатно и там сразу есть все нужное. Правда там есть ограничение на размер репо в 2гига.
Выглядит это все как то так:
Что изменилось
1) Добавлено регламентное задание, которое делает все в фоне и по расписанию. Это позволило а) регламентно выгружать все изменения и следить за хранилищем б) окна гита и командной панели больше не выскакивают и не мешают работать
2) Внедрены инструменты разработчика для управления регламентным заданием, пакетной обработкой объектов и на перспективу. Из-за этого основной режим запуска теперь - обычное приложение.
3) Добавлена распаковка обычных форм с помощью V8Unpack . Исходные файлы Form.bin удаляются для ускорения выгрузки и ограничения роста хранилища, так что из репо GIT восстановить конфигурацию с обычными формами не получится.
4) Добавлено логирование выгрузки, чтобы быть в курсе происходящего
5) Добавлена инкрементальная выгрузка из 8.3.10. Выгрузка в среднем стала быстрее в 3 раза
6) Небольшой багфикс. Например, любимая ошибка неразрывного пробела, когда 1000ая версия хранилища не очень выгружалась (точнее, выгружалась 1ая версия)
Настройка и подготовка к работе
Сперва все так же, как раньше. rtnm сделал подробнейшее описание https://bitbucket.org/rtnm/gittertutorial
Чтобы работало регламентное задание, нужно на машине, где крутится сервер 1С из-под пользователя, под которым крутится 1С, настроить папки и GIT. Если по иконке с зажатым шифтом кликнуть правой кнопкой, то появится пункт "Запустить от имени другого пользователя". Все используемые пути также должны быть доступны из под пользователя, под которым крутится 1С.
Чтобы работала распаковка обычных форм, нужно в константе указать пусть к V8Unpack (Операции-Контанты). Я взял его из папки oScript ( //catalog.mista.ru/public/548028/ там, кстати, есть библиотека Gitsync которая делает примерно то же самое, но более продвинутая. Наверное. Я не очень разбирался.)
Если у вас очень много версий в хранилище, то их выгрузка может занять значительное время. Чтобы начать выгружать не с 1ой версии, можно указать реквизит "Минимальная версия для выгрузки", и тогда выгрузка пойдет именно с этой версии.
Для инкрементальной выгрузки 1) У вас должна быть 1С 8.3.10+ 2) В карточке должна стоять галка "Обновление выгрузки".
Для логгирование вызова 1ски стоит указать файл для вывода служебных сообщений. Туда будут выводиться команды и результаты работы с 1С.
Управление регламентными заданиями удобно выполнять через консоль заданий в ИР, изменяя там расписание, включая/отключая для разбора проблем и просматривая лог выгрузки
Возможные проблемы и как их обходить
Небольшой список проблем, с которыми я столкнулся
Команды Git не работают, постоянно выскакивает исключение
Идем на сервер 1С, запускаем git bash от пользователя, под которым крутится 1С, переходим в папку с хранилищем cd имя папки (обращаю внимание, что путь к папке указывается через / и в целом иначе). Если попали в тот репо, то в скобочках появится имя ветки. После этого вставляем команду, которая указана в исключении, и смотрим ошибки. Дальше гугл, мозг, вопросы на форумах или это уже описано далее.
Репозитарий слишком много весит/слишком много ненужных файлов
Для этого я использую файл ".gitignore". Нужно создать этот файл в папке с репо и указать туда то, что не нужно отслеживать. Для себя я его настроил так:
*.cf
*.png
*.bmp
*.bin
Picture.xml
Template.xml
src/ConfigDumpInfo.xml
out1c.txt
Так же этот файл можно создать с помощью сторонних программ для работы с gitом.
Git не видит изменений. Пишет, что нечего коммитить
Если было изменение в обычной форме, или в картинке или в другом файле, который находится в гитигноре, то изменений как бы нет на самом деле. Если гиттер работает под 8.3.10+ с соответствующей галочкой в карточке, то при ошибке коммита проверяется файл изменений. Если и в нем изменений нет, или файла в принципе нет, то генерируется исключение. Иначе этот момент пропускается. Чтобы у меня не ругалось на отсутствие изменений, когда исправлена обычная форма, которая и не уходит - я исключил из гитигнора файл сравнений, и в нем теперь (для 8.3.10+) всегда отображается, а что было изменено по мнению 1С.
Локальный git сломался, начал работать не так итп
Для этого нужно
1) Остановить регламентое задание
2) Удалить все в локальном репо
3) Склонировать гит из удаленного репо в локальный
4) В гиттере снять флажки "Выгружено" с тех версий, которые не ушли в удаленный репо
5) Включить регламентное задание
Специальные предложения
См. также
Очный семинар по регулярному менеджменту Александра Фридмана "Вы или Хаос", 12 декабря 2019 г. , Санкт-Петербург Промо
Семинар по регулярному менеджменту от Александра Фридмана для собственников, первых лиц и топов. Технология управленческого планирования, комплексного управления временем и другими ресурсами, выполнением поручений, делами, информацией, контактами (встречи-звонки-почта).
от 11000 до 29000 рублей
Просмотр и анализ структуры базы данных (отчет на СКД) 120
5 стартмани
24.07.2019 8265 92 YPermitin 25
Cashback 35% при покупке 1С лицензий на счет INFOSTART.RU с 27.11 по 04.12 Промо
Оформляете заказ на 1С лицензии или конфигурации. Получаете 35% от стоимости на счет в профиле INFOSTART.RU. Выбираете сервисы и продукты на сумму кэшбэка.
Переводим рутину ручного тестирования 1C на рельсы Jenkins-а и ADD 141
1 стартмани
03.06.2019 11586 1 ripreal1 86
Перенос документов и справочников ERP 2 / КА 2 / УТ 11 => БП 3.0 Промо
Перенос позволяет настроить собственный обмен данными между указанными программами, альтернативный предлагаемому фирмой 1С. Предоставляем техподдержку по всем вопросам данного обмена. Можем подключиться к вам удаленно для разбора ситуаций. Оперативно обновляем при выходе новых релизов 1С. Бесплатные обновления в течение полугода.
19700 руб.
Универсальный HTTP-сервис на платформе 1С, аля HTTP-сервер с примером 196
1 стартмани
13.05.2019 18094 93 Diversus 38
1С:Предприятие через Интернет. 1С:Fresh Промо
Ведение бухгалтерского и налогового учет, сдача отчетности, управление бизнесом из любой точки мира. Привычные программы «1С» через Интернет без приобретения коробочных программ.
Расширение "Быстрая проверка кода" для конфигурации 1С:Автоматизированная проверка конфигураций 92
1 стартмани
26.03.2019 10780 42 Bazil 25
Онлайн-интенсив "Бизнес-процессы для подготовки к экзамену 1С:Специалист по платформе" 12 декабря 2019 г. Промо
На интенсиве будут рассмотрены все теоретические вопросы, связанные с устройством механизма бизнес-процессов – это необходимо для успешной сдачи экзамена 1С:Специалист по платформе. Также, в качестве практического примера, будет решена задача, аналогичная экзаменационной.
777 рублей
Методика оптимизации программного кода 1С: проведение документов 84
1 стартмани
19.03.2019 15438 13 dmitrydemenew 83
Перенос данных БП 3.0 => УТ 11 / КА 2 / ERP 2 (ЕРП) (перенос остатков, документов и справочной информации из "1С:Бухгалтерия предприятия 8", ред.3.0). Обновлено до БП 3.0.73.х, УТ 11.4.10.х, КА 2.4.10.х., ERP 2.4.10.х! Промо
Переносятся документы за выбранный период, справочная информация и остатки по счетам бух. учета в программу УТ 11 / КА 2 / ЕРП 2 (ERP). Переносятся все возможные виды операций ввода остатков на нужную дату. Есть отбор по периоду переноса документов и фильтр по организации, доступен выбор даты ввода остатков. Если нужно переносить что-то дополнительно, то обычно бесплатно добавляем это в перенос . Смотрите видеодемонстрацию со звуком - советами по переносу и рекомендациями настройки программ.
29700 руб.
Инструктор. Прототип инструмента создания быстрых пользовательских инструкций 71
1 стартмани
15.02.2019 7708 37 ROM_NN 8
Перенос данных КА 1.1 / УПП 1.3 => БП 3.0 (перенос остатков, документов и справочников из "1С:Комплексная автоматизация 1.1" / УПП 1.3 в "1С:Бухгалтерия 3.0"). Обновлен до версий КА 1.1.115.х, УПП 1.3.127.х! Промо
Разработка позволяет перенести остатки по всем счетам бух.учета в программу "1С:Бухгалтерия предприятия 8", ред. 3.0 на выбранную дату начала ведения учета. Также переносятся документы за период и вся необходимая справочная информация. Правила оперативно обновляю при выходе новых релизов. Рассылка обновлений правил бесплатно в течение 12 месяцев. Есть видеодемонстрация проведения переноса данных. Конфигурации при использовании обмена остаются полностью типовыми. Перенос данных возможен в Бухгалтерию 3.0 версии ПРОФ, КОРП или базовую.
24700 руб.
Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019) 178
5 стартмани
09.01.2019 24404 225 informa1555 174
Подборка программ для взаимодействия с ЕГАИС Промо
ЕГАИС (Единая государственная автоматизированная информационная система) - автоматизированная система, предназначенная для государственного контроля за объёмом производства и оборота этилового спирта, алкогольной и спиртосодержащей продукции. Инфостарт рекомендует подборку проверенных решений для взаимодействия с системой.
Управление задачами в 1С - готовая подсистема с открытым кодом и широким базовым функционалом. Версия 1.0.6 94
2 стартмани
17.12.2018 11389 82 for_sale 38
Перенос данных УТ 10.3 => УТ 11 / КА 2 / ERP 2 (ЕРП 2) (документы, остатки и справочная информация из "1С:Управление торговлей, ред. 10.3" в УТ 11 / КА 2 / ERP 2). Обновлен до УТ 10.3.56.х, УТ 11.4.10.х, КА 2.4.10.х и ERP 2.4.10.х! Промо
Уже более 100 компаний приобрели перенос и выполнили переход на УТ 11 / КА 2 / ERP 2 с помощью нашей разработки! Обработка перехода с УТ 10.3 на УТ 11 / КА 2 / ERP 2 позволяет перенести не только остатки на указанную дату (как типовой перенос), но и все возможные документы за выбранный период. При выходе новых релизов этих программ оперативно выпускаем обновление обработки. Предоставляем техническую поддержку. Можем сделать бесплатный тестовый перенос!
29700 руб.
Go. Разбор лога технологического журнала. Достойная альтернатива perl'у 85
1 стартмани
24.10.2018 11736 4 lazarenko 39
Перенос документов, остатков и справочников КА 1.1 => КА 2 / УТ 11. Обновлено до КА 2.4.10.х и УТ 11.4.10.х! Промо
Более 130 компаний выполнили переход на КА 2 или УТ 11 с помощью нашей разработки! Позволяет перенести не только остатки и справочники (как типовая обработка), но и документы за нужный период времени. Предоставляем техподдержку, оперативно исправляем замечания, выпускаем обновления при выходе новых релизов программ 1С. Вы можете проверить разработку до покупки: сделаем бесплатный тестовый перенос из вашей базы КА 1.1 и предоставим доступ к базе-результату через веб-клиент!
29700 руб.
Пользовательское определение языка 1С для Notepad++ и пример использования списка функций для навигации под свои нужды 66
1 стартмани
10.09.2018 7910 43 albert.goncharov 23
Вакансия Автор новостных обзоров на тему 1С и бухучета, По совместительству Промо
Редакция Infostart.ru будет рада сотрудничеству с 1С-специалистом, умеющим и любящим излагать свои мысли в письменной форме. Если вы работали в IT-изданиях или имеете опыт ведения технологического блога/канала/группы, если сможете сделать обзор обработок из каталога infostart.ru/public/all/, то у вас большое преимущество.
Программы для исполнения 488-ФЗ: Маркировка товаров Промо
1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.
Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции 65
5 стартмани
09.08.2018 16867 23 informa1555 26