Плагин VCSIntegration
Плагин VCSIntegration предназначен для того, чтобы система контроля версий (Subversion, Git) могла отслеживать все изменения файлов, выполняемые в UnigineEditor. Плагин отслеживает все действия (за некоторыми исключениями) и обрабатывает их.
Плагин VCSIntegration доступен для проектов с контролем версий. Он не имеет интерфейса и запускается автоматически после инициализации системы ассетов и импорта всех ассетов.
Как и другие плагины, этот плагин можно загружать и выгружать через окно Editor Plugin Manager. Когда плагин загружен и запущен, он получает данные о каждом событии в системе ассетов (добавлении, удалении, переименовании, перемещении или редактировании ассетов).
Для каждого события вызывается исполняемый файл VCS (svn.exe или git.exe) и запускается соответствующий процесс с требуемыми аргументами.
Для корректной работы плагина с проектами, работающими в разных системах контроля версий, вам необходимо настроить среду. Пожалуйста, обратитесь к соответствующим статьям для получения подробной информации:
Ограничения плагина#
Плагин не обеспечивает полноценной интеграции с Subversion и Git и не может решить все проблемы. Его цель - облегчить отслеживание основных изменений контента, внесенных несколькими разработчиками, работающими над одним и тем же проектом, в редакторе и сохранение этих изменений в репозитории. Поэтому обратите внимание на следующие ограничения:
- Плагин управляет только каталогом /data. Это означает, что плагин не может отслеживать изменения в каталогах или ассетах за пределами этого каталога.
- Инструмент Cleaner позволяет удалять потерянные файлы времени выполнения (Lost Runtimes), но плагин VCSIntegration не может этого сделать. Файлы, удаленные с помощью этой функции, будут иметь статус missing.
- Плагины редактора запускаются после инициализации системы ассетов и импорта всех ассетов. Следовательно, если файлы проекта были добавлены или удалены до запуска редактора, плагин VCSIntegration не сможет отследить эти изменения при инициализации, и они будут иметь статус non-versioned/missing в SVN/Git Commit.
- Плагин не отслеживает изменения в подключенных каталогах (на которые ссылается mount point).
- Плагин не решает и не упрощает разрешение конфликтов. Он только помогает SVN или Git корректно определять статус файла.
- Когда плагин запущен, работа редактора может замедлиться. Это вызвано обработкой всех взаимодействий между файлами с помощью SVN/Git, что отнимает много времени. Чем больше файлов затронуто изменениями, тем дольше длится обработка. Это особенно заметно при добавлении или удалении файлов, в других случаях обработка происходит довольно быстро.
Настройка проекта для поддержки плагинов#
Чтобы плагин VCSIntegration мог отслеживать изменения в ассетах через UnigineEditor, вы должны настроить свой проект следующим образом:
- Найдите свой проект в браузере UNIGINE SDK и выберите Other Actions -> Configure.
- В открывшейся форме Configure нажмите кнопку Plugins и выберите VCSIntegration Plugin из списка.
- Нажмите Add, а затем Configure Project.
-
Убедитесь, что вашим проектом управляет система контроля версий (SVN, Git). В противном случае при запуске UnigineEditor появится сообщение об ошибке.
Когда вы запускаете UnigineEditor, плагин VCSIntegration автоматически получает данные о событиях в системе активов и обрабатывает их.
Порядок работы с плагином#
С точки зрения пользователя, работа плагина практически не влияет на поведение редактора - вы не заметите никаких изменений. Вы можете удалять, добавлять, переименовывать, редактировать, перемещать и создавать файлы и каталоги точно так же, как вы делали это раньше, только с помощью плагина VCSIntegration, который отслеживает и обрабатывает все изменения.
В целом, порядок работы с плагином таков:
- Перед началом работы обновите и очистите репозиторий.
- Запустите редактор и работайте в обычном режиме (добавляйте, удаляйте и изменяйте файлы и каталоги, как вы делали всегда).
- Когда закончите, сохраните проект и закройте редактор. Мы рекомендуем закрыть редактор, так как перед коммитом может потребоваться обновление.
- Примените свои изменения к репозиторию. Если возникнут конфликты, разрешите их, как вы делали это раньше. Однако имейте в виду, что все изменения, внесенные без запуска редактора (через проводник), будут иметь статус недопустимых.
Отключение плагина VCSIntegration#
Плагин VCSIntegration можно отключить так же, как и другие плагины в редакторе:
- Выберите Windows -> Editor Plugin Manager в строке меню.
-
Найдите в списке плагин VCSIntegration и нажмите Unload.
После этого плагин будет отключен до тех пор, пока не будет перезапущен редактор или не будет нажата кнопка Load.
Чтобы полностью отключить плагин, вам необходимо перенастроить проект точно так же, как вы делали это ранее:
- Найдите свой проект в браузере UNIGINE SDK и выберите Other Actions -> Configure.
- В открывшейся форме Configure нажмите кнопку Plugins и отключите VCSIntegration Plugin.
- Нажмите Add, а затем Configure Project.