Версионирование в 1С:Предприятие 8.3 — полезный механизм, который автоматически сохраняет историю изменений объектов конфигурации. Однако в некоторых случаях он становится обузой: замедляет работу с большими базами, усложняет синхронизацию между разработчиками или просто не нужен в тестовых средах. Отключение этой функции требует точного понимания процесса и последствий — ошибка может привести к потере критичных данных или нарушению целостности конфигурации.

В этой статье мы разберём все способы отключения версионирования — от стандартных настроек в конфигураторе до программных методов через встроенный язык. Особое внимание уделим скрытым параметрам платформы, которые не документированы в официальных руководствах, но активно используются опытными администраторами. Материал актуален для всех редакций 1С:Предприятие 8.3, включая последние обновления 2026 года.

Что такое версионирование в 1С и зачем его отключать

Версионирование в — это механизм контроля изменений, который фиксирует каждую модификацию объектов конфигурации (форм, отчётов, обработок и т.д.). При каждом сохранении создаётся новая версия, что позволяет:

  • 🔄 Откатываться к предыдущим состояниям при ошибках
  • 👥 Синхронизировать работу нескольких разработчиков
  • 📊 Отслеживать историю изменений по датам и авторам

Однако в некоторых сценариях версионирование становится проблемой:

  • Производительность: Базы с тысячами версий тормозят при открытии объектов
  • 💾 Объём хранилища: Версии занимают до 30% дополнительного места на диске
  • 🔧 Тестовые среды: В песочницах история изменений не нужна
  • 🔄 Конфликты слияния: При частом коммите в Git или 1C:EDT
⚠️ Внимание: Отключение версионирования необратимо удаляет всю историю изменений для новых объектов. Существующие версии останутся, но новые создаваться не будут. Для критичных баз рекомендуем сделать полный бэкап перед изменениями.
📊 Зачем вы хотите отключить версионирование в 1С?
Ускорение работы
Освобождение места
Тестовая база
Проблемы с Git/EDT
Другое

Способ 1: Отключение через настройки конфигуратора

Самый простой метод — использовать встроенные опции конфигуратора. Этот способ подходит для полного отключения версионирования на уровне всей конфигурации:

  1. Откройте базу в режиме Конфигуратор (с правами администратора)
  2. Перейдите в меню Администрирование → Настройки конфигуратора
  3. На вкладке Версионирование снимите галочку Вести версионирование конфигурации
  4. Сохраните настройки и перезапустите конфигуратор

После этого новые версии создаваться не будут, но старая история останется. Чтобы полностью очистить версии:

// В консоли отладки (Ctrl+Alt+O) выполните:

ОчиститьВерсииКонфигурации();

⚠️ Внимание: Команда ОчиститьВерсииКонфигурации() безвозвратно удаляет все версии для всех объектов. Восстановить их будет невозможно. Перед выполнением закройте все сеансы пользователей.

Сделать бэкап базы (.dt)|Проверить права администратора|Закрыть все пользовательские сеансы|Убедиться в отсутствии активных транзакций|Сохранить текущие настройки в файл (.cf)

-->

Способ 2: Выборочное отключение для отдельных объектов

Если нужно отключить версионирование только для конкретных объектов (например, отчётов или обработок), используйте свойство Версионирование в метаданных:

  1. В дереве конфигурации выделите нужный объект (например, Отчет.Продажи)
  2. В палитре свойств найдите параметр Версионирование
  3. Установите значение Не использовать
  4. Сохраните конфигурацию (Ctrl+S)

Этот метод позволяет гибко управлять версионированием, сохраняя историю только для критичных объектов. Например, можно оставить версии для документов и справочников, но отключить для внешних отчётов.

Тип объекта Рекомендация по версионированию Причина
Документы Включено Критичные изменения бизнес-логики
Справочники Включено Структура данных важна для отчётов
Отчёты/Обработки Отключено Часто меняются, история не критична
Формы Выборочно Только для ключевых форм (например, документов)
💡

Для массового изменения свойств версионирования используйте обработку "Пакетное изменение реквизитов" из библиотеки стандартных подсистем (доступна в последних релизах 8.3.22+).

Способ 3: Программное отключение через встроенный язык

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

Процедура ОтключитьВерсионированиеОтчетов()

Для Каждого Отчет Из Метаданные.Отчеты Цикл

Отчет.Версионирование = Ложь;

Отчет.Записать();

КонецЦикла;

Сообщить("Версионирование отключено для " + Метаданные.Отчеты.Количество() + " отчётов");

КонецПроцедуры

Аналогичный код можно написать для обработок, форм или других объектов. Для выполнения:

  1. Откройте Отладчик (Ctrl+Alt+D)
  2. Вставьте код в консоль
  3. Нажмите F5 для выполнения
⚠️ Внимание: Массовое изменение метаданных через скрипты может нарушить целостность конфигурации, если в этот момент работают другие пользователи. Всегда выполняйте такие операции в монопольном режиме (Файл → Открыть в монопольном режиме).
Как проверить текущие настройки версионирования программно?

Используйте следующий запрос:

Запрос = Новый Запрос;

Запрос.Текст = "ВЫБРАТЬ

| Метаданные.Имя КАК Объект,

| Метаданные.Версионирование КАК Статус

|ИЗ

| Метаданные.Объекты КАК Метаданные

|ГДЕ

| Метаданные.Версионирование = ИСТИНА";

Результат = Запрос.Выполнить();

Выборка = Результат.Выбрать();

Пока Выборка.Следующий() Цикл

Сообщить(Выборка.Объект + " - версии ВКЛЮЧЕНЫ");

КонецЦикла;

Это выведет список всех объектов, для которых ведётся версионирование.

Способ 4: Отключение через параметры запуска (для опытных)

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

  1. Закройте все сеансы
  2. Откройте файл запуска 1cv8.exe через командную строку с параметром:
    1cv8.exe ENTERPRISE /DisableVersioning
  3. Для постоянного эффекта добавьте параметр в ярлык запуска или конфигурационный файл 1cv8.lst

Этот способ не документирован в официальных источниках, но работает в версиях платформы 8.3.18+. Он полностью блокирует создание новых версий, но не удаляет существующие.

Параметр Эффект Применение
/DisableVersioning Блокирует создание новых версий Глобально для всех баз
/ClearVersions Удаляет все существующие версии Требует монопольного режима
/VersioningThreshold=100 Ограничивает количество версий (100) Для оптимизации хранилища
⚠️ Внимание: Параметры запуска могут конфликтовать с настройками конфигуратора. Если после применения версии продолжают создаваться, проверьте приоритетность параметров в документации к вашей версии платформы.

Что делать после отключения версионирования

Отключение версионирования — только первый шаг. Чтобы избежать проблем в будущем, выполните следующие действия:

  • 🔄 Настройте резервное копирование: Без версий восстановление после ошибок усложняется. Автоматизируйте бэкапы через 1C:EDT или сторонние утилиты (например, V8Unpack)
  • 📝 Ведите журнал изменений: Заменой версиям может стать ручное ведение лога в Excel или Confluence
  • 👥 Обучите команду: Разработчики должны понимать, что откат изменений теперь требует ручного вмешательства
  • 🔧 Проверьте интеграции: Некоторые системы (например, 1C:Fresh) могут требовать версионирование для синхронизации

Если вы работаете в команде, рассмотрите альтернативные инструменты контроля версий:

  • 🐙 Git + 1C:EDT: Полноценная замена встроенному версионированию
  • 📦 Storage 1C: Хранилище конфигураций с историей изменений
  • 🔄 OneScript + VCS: Для автоматизации выгрузки/загрузки
💡

Отключение версионирования не отменяет необходимость контроля изменений. Без альтернативных инструментов (Git, Storage, бэкапы) вы рискуете потерять критичные данные при ошибках разработчиков.

Распространённые ошибки и их решения

При отключении версионирования пользователи часто сталкиваются с типичными проблемами. Вот как их избежать или исправить:

Ошибка Причина Решение
Ошибка блокировки метаданных Сеансы пользователей активны Закройте все соединения или используйте монопольный режим
Недостаточно прав Текущий пользователь не администратор Запустите конфигуратор от имени админа или измените права в 1Cv8.1CD
Версии продолжают создаваться Конфликт параметров запуска и настроек конфигуратора Проверьте приоритет в About (Справка → О программе)
Повреждение конфигурации Прервано массовое изменение метаданных Восстановите из бэкапа или используйте chdbfl.exe

Если после отключения версий вы обнаружили, что конфигурация перестала открываться, попробуйте:

  1. Запустить тестирование и исправление (Администрирование → Тестирование и исправление)
  2. Восстановить из последнего бэкапа (.dt)
  3. Использовать утилиту 1cv8.exe /RepairIB в командной строке
Как вернуть версионирование после отключения?

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

FAQ: Частые вопросы по отключению версионирования

Можно ли отключить версионирование только для одного разработчика, не затрагивая других?

Нет, настройки версионирования применяются ко всей конфигурации глобально. Однако можно:

  1. Создать отдельную тестовую базу без версионирования
  2. Использовать 1C:EDT с локальным Git-репозиторием
  3. Настроить права так, чтобы разработчик не мог сохранять изменения в основную базу
Будет ли работать обмен данными (РИБ, распределённые базы) без версионирования?

Да, механизмы обмена данными (РИБ, УРИБ, УФ) не зависят от версионирования конфигурации. Однако:

  • При обновлении конфигурации в узлах РИБ могут возникать конфликты, если структуры объектов изменились
  • Для отслеживания изменений в распределённых базах лучше использовать внешние инструменты (например, Git)
Как отключить версионирование в облачной версии 1С (1C:Fresh, 1C:Линк)?

В облачных решениях (1C:Fresh, 1C:Линк) прямого доступа к настройкам версионирования нет. Альтернативы:

  • Используйте 1C:EDT с подключением к облачной базе и настройте Git для контроля версий
  • Обратитесь в поддержку с запросом на отключение (для корпоративных тарифов)
  • Экспортируйте конфигурацию локально, отключите версии, затем импортируйте обратно
⚠️ Внимание: В облачных средах некоторые операции могут быть ограничены условиями тарифного плана.
Правда ли, что отключение версионирования ускоряет работу 1С?

Да, но эффект зависит от:

  • 📊 Размера базы: При 10 000+ версий ускорение заметно (до 20% быстрее открытие объектов)
  • 💾 Типа хранилища: На SSD разница меньше, чем на HDD
  • 🔧 Конфигурации: В "тяжёлых" конфигурациях (ERP, КА) эффект сильнее

Для точной оценки проведите тест: измерьте время открытия крупного объекта (например, документа РеализацияТоваровУслуг) до и после отключения версий.

Можно ли отключить версионирование только для определённого периода (например, на время разработки)?

Прямой функции для временного отключения нет, но можно:

  1. Создать копию базы без версионирования для разработки
  2. Использовать параметры запуска с /DisableVersioning только при необходимости
  3. Написать обработку, которая будет автоматически включать/отключать версии по расписанию (через Планировщик заданий)

Пример кода для автоматического управления:

Процедура УправитьВерсионированием(Включить)

Настройки = Конфигуратор.Настройки();

Настройки.Версионирование = Включить;

Настройки.Записать();

КонецПроцедуры