Unity интегрируется с двумя системами контроля версий: PerforceСистема контроля версий для управления изменениями файлов. Подробнее
См. в Словарь и Plastic SCM а>. Чтобы использовать интеграцию управления версиями в Unity, вам необходимо настроить сервер Perforce или Plastic SCM для вашего проекта Unity.
Настройка контроля версий в Unity
Откройте проект Unity, выберите Правка > Настройки проекта, а затем выберите категорию Редактор.
Под Контроль версийСистема управления изменениями файлов. Вы можете использовать Unity в сочетании с наиболее распространенными инструментами контроля версий, включая Perforce, Git, Mercurial и PlasticSCM. Дополнительная информация
Посмотрите в Словарь есть следующие настройки:
Свойства | Функция | |
---|---|---|
Mode | Выберите режим контроля версий. | |
Hidden meta files | Скрывает файлы .meta в проводнике вашей операционной системы. Unity не отображает файлы .meta в представлении «Проект», независимо от того, какой режим вы выберете. | |
Visible meta files | Выберите этот параметр, чтобы работать с системой контроля версий, которую Unity не поддерживает. Это значение по умолчанию. Затем вы можете управлять исходными активами и метаданными для этих активов с помощью системы контроля версий по вашему выбору. Дополнительные сведения см. в документации по внешним системам контроля версий. | |
Perforce | Выберите этот вариант, если вы используете Perforce в качестве системы управления версиями. | |
Plastic SCM | Выберите этот вариант, если вы используете Plastic SCM в качестве системы управления версиями. | |
Username (Perforce only) |
Введите имя пользователя, связанное с вашей учетной записью Perforce. | |
Password (Perforce only) |
Введите пароль, связанный с вашей учетной записью Perforce. | |
Workspace (Perforce only) |
Введите свое рабочее пространство (например, Example_Workspace_1 ). |
|
Server (Perforce only) |
Введите сервер, на котором находится ваш проект Unity (например, localhost:1666). | |
HostВ многопользовательской сетевой игре без выделенного сервера один из участников игры действует как центр управления игрой. Этот одноранговый узел называется «хост». Он запускает сервер и «локальный клиент», в то время как другие одноранговые узлы запускают «удаленный клиент». More info See in Словарь (Perforce only) |
Введите имя хоста, которое должен олицетворять ваш компьютер (например, workstation123.perforce.com) | |
Log Level | Выберите, сколько информации о контроле версий нужно получать в журнале консоли Unity. | |
Verbose | Unity регистрирует каждую операцию, связанную с контролем версий. Этот параметр обеспечивает очень подробное ведение журнала и полезен, если вы хотите отладить настройку контроля версий. | |
Info | Unity регистрирует ошибки, предупреждения и информацию, связанную с контролем версий. | |
Notice | Unity регистрирует ошибки и предупреждения. | |
Fatal | Unity выводит на консоль только фатальные ошибки. | |
Status | Отображает информацию о статусе подключения к системе контроля версий. Если вы не подключены, выберите Подключить, чтобы подключиться к системе, которую вы настроили. | |
Automatic Add | Когда этот параметр включен, Unity автоматически добавляет ваши файлы в систему контроля версий, когда вы добавляете их в проект либо через редактор, либо через папку на диске. Когда этот параметр отключен, вам необходимо вручную добавлять файлы в систему контроля версий. Этот параметр включен по умолчанию. | |
Work Offline (Perforce only) |
Включите этот параметр для работы в автономном режиме. Если этот параметр включен, вам необходимо согласовать работу в автономном режиме в P4V или использовать команду согласования в P4, чтобы обновить хранилище сервера Perforce с работой, которую вы выполняли в автономном режиме. Дополнительные сведения см. в разделе Работа в автономном режиме с Perforce. | |
Allow Async Update (Perforce only) |
Включите этот параметр, чтобы использовать асинхронные запросы состояния управления версиями. Если этот параметр включен, Perforce обновляет статус контроля версий файлов, не останавливая редактор Unity. Используйте этот параметр, если подключение к серверу управления версиями имеет большую задержку. Примечание. Только запросы о состоянии являются асинхронными. Unity синхронно выполняет операции, которые изменяют состояние файлов или требуют актуальной информации о состоянии файла. |
|
Show Failed Checkouts (Perforce only) |
Включите это свойство, чтобы отображать диалоговое окно, когда Perforce не может выполнить операцию извлечения. Это может произойти, если вы потеряете соединение или если другой пользователь извлек исключительно актив, который вы хотите отредактировать. | |
Overwrite Failed Checkout Assets (Perforce only) |
Когда вы включаете этот параметр, Unity сохраняет все активы, которые нельзя извлечь. Это означает, что Unity принудительно выполняет сохранение в файл, даже если Perforce не может извлечь файл. Это включено по умолчанию. Если вы отключите его, Unity не будет принудительно сохранять ваши файлы, если Perforce не сможет их извлечь. | |
Overlay Icons | Включите этот параметр, чтобы отображать значки состояния контроля версий в редакторе.. | |
Smart Merge | Умное слияние позволяет Unity объединять файлы, в которых есть изменения в одной строке. Это полезно, если несколько пользователей одновременно работают над одним и тем же проектом. | |
Off | Отключите смарт-объединение. | |
Ask | Включите интеллектуальное слияние, но получите уведомление перед слиянием, если возникнет конфликт. Это значение по умолчанию. | |
Premerge | Автоматически использовать Smart Merge. |
Настройте параметры Контроля версий, затем нажмите кнопку Подключить рядом с областью состояния, чтобы подключиться к системе контроля версий. Когда Unity подключается к системе, в области состояния отображается Подключено.
Чтобы настроить инструмент контроля версий, откройте Настройки и выберите раздел Внешние инструменты. Вы можете выбрать новый инструмент в разделе Различие/объединение контроля версий.
Использование контроля версий в Unity
Когда вы настроите Редактор для работы с вашей системой контроля версий, вы сможете выполнять операции контроля версий через Редактор, а не в клиенте контроля версий. Для этого щелкните правой кнопкой мыши актив в представлении проекта.
Операции контроля версий различаются в зависимости от того, какой контроль версий вы используете. В следующей таблице показано, какие действия доступны для каждого контроля версий:
Операция контроля версий | Описание | Perforce | Пластмассовый SCM |
---|---|---|---|
Get Latest | Это обновит файлы на вашем компьютере, чтобы они соответствовали файлам в системе контроля версий.. | Yes | Нет. Чтобы получить последние изменения и обновить файл, необходимо использовать окно контроля версий (Окно > Управление активами > Контроль версий). |
Submit | Отправляет текущее состояние файлов в систему контроля версий. | Yes | Yes |
Check Out | Позволяет вносить изменения в файлы. | Yes | Yes |
Check Out (Other) | Выберите, извлекать ли актив и его мета-файл, или только актив, или только мета-файл. | Yes | No |
Mark Add | Добавляет файлы в систему контроля версий. | Yes | Yes |
Revert | Отменяет изменения, чтобы открыть измененные файлы. | Yes | Yes |
Revert Unchanged | Удаляет статус извлечения из файлов, которые ранее были извлечены, но не были изменены. | Yes | Yes |
Resolve Conflicts | Разрешает конфликты файлов, которые были изменены несколькими пользователями. | Yes | Нет. Конфликты появляются в меню управления версиями, но их необходимо разрешать в графическом интерфейсе Plastic SCM. |
Lock | Запрещает другим пользователям вносить изменения в файлы. | Yes | Нет. Чтобы заблокировать или разблокировать файлы в Plastic SCM, вы должны отредактировать конкретный файл блокировки Plastic SCM извне. Дополнительную информацию см. на странице Интеграция Plastic SCM.. |
Unlock | Снимает блокировку и позволяет любому отправлять изменения. | Yes | Нет. Чтобы заблокировать или разблокировать файлы в Plastic SCM, вы должны отредактировать конкретный файл блокировки Plastic SCM извне. Дополнительную информацию см. на странице Интеграция Plastic SCM. |
Diff | Сравнивает различия между локальными файлами на вашем компьютере и файлами на сервере. Вы можете различать только файл ресурсов или файл ресурсов и его мета-файл. | Yes | Yes |
Извлечение файлов
В некоторых системах контроля версий, таких как Perforce, файлы с версиями по умолчанию доступны только для чтения.
и требуют, чтобы вы проверили их, прежде чем редактировать (если вы не включили параметр Работать в автономном режиме). Когда вы работаете с ассетами с версиями из редактора, Inspectorокно Unity, в котором отображается информация о текущем выбранном игровом объекте, ассете или проекте настройки, позволяющие просматривать и редактировать значения. Дополнительная информация
See in Словарь отображает Check Out кнопка, позволяющая редактировать файл. Кроме того, Настройки проекташирокий набор настроек, которые позволяют настраивать физику, звук, сеть, графику, ввод и многие другие параметры. ведут себя области вашего проекта. Подробнее
См. Словарь, у инспекторов есть кнопка Оформить заказ, которая вы можете использовать для проверки конкретных настроек проекта.
Если у вас есть код скрипта пользовательского редактора, который отключает части другого пользовательского инструмента редактирования. для ассетов только для чтения или если вы пишете в версионные файлы вручную, используйте AssetDatabase.IsOpenForEdit и AssetDatabase.MakeEditable API для проверить возможность редактирования файла и выполнить операции извлечения.
Интеграция с контролем версий также предоставляет Provider.PreCheckoutCallback и Provider.PreSubmitCallback Обратные вызовы C# для пользовательской логики проверки операций контроля версий.
Unity записывает любые Ресурсы, которые вы изменяете или помечаете как измененные в Редакторе, на диск при выполнении операции Сохранить проект. Затем активы извлекаются в системе управления версиями, если это необходимо. Это может привести к тому, что активы будут извлечены, даже если фактических изменений в файле не происходит. Чаще всего это происходит, когда скрипт редактора вызывает EditorUtility.SetDirty для объекта, не проверяя, был ли он изменен.
Примечание. Если Unity не может зафиксировать ваши изменения в клиенте управления версиями (например, если сервер не работает или возникают проблемы с лицензией), ваши изменения сохраняются в отдельном наборе изменений. р>
При сохранении изменений в .сценесцена содержит среду и меню вашей игры. Думайте о каждом уникальном файле сцены как об уникальном уровне. В каждой сцене вы размещаете свое окружение, препятствия и декорации, по сути проектируя и создавая свою игру по частям. Подробнее
Посмотрите в файле Словарь, Unity автоматически проверит его. Если вы используете Plastic SCM, он также автоматически проверяет автоматически сгенерированные активы, такие как карты освещения.
Окно контроля версий
Вы можете использовать окно контроля версий для просмотра файлов в вашем списке изменений. Чтобы получить доступ к окну, перейдите в раздел Окно > Управление активами > Контроль версий.
На вкладке Исходящие перечислены все локальные изменения, ожидающие фиксации в системе управления версиями. На вкладке Входящие перечислены все изменения, которые необходимо получить из системы управления версиями.
Щелкните правой кнопкой мыши ресурсы или списки изменений в окне, чтобы выполнить над ними операции. Чтобы перемещать активы между списками изменений, перетащите их из одного списка изменений в заголовок целевого списка изменений.
Иконки
В редакторе отображаются следующие значки для визуализации статуса контроля версий для файлов и ресурсов:
Иконка | Цель |
---|---|
Файл добавлен локально и ожидает добавления в систему контроля версий. | |
Файл добавлен в систему контроля версий другим пользователем и ожидает добавления в систему контроля версий. | |
Файл извлечен локально. | |
Файл извлечен другим пользователем удаленно. | |
При слиянии этого файла возник конфликт, который необходимо разрешить. | |
Файл был удален локально и ожидает удаления в системе управления версиями.. | |
Файл был удален другим пользователем и ожидает удаления в системе контроля версий.. | |
Файл еще не находится под контролем версий. Вы можете использовать операцию Отметить для добавления, чтобы добавить файл вручную. | |
Файл заблокирован вами, и другие пользователи не могут его изменить. | |
Файл заблокирован другим пользователем, и вы не можете его изменить. | |
Другой пользователь зарегистрировал новую версию этого файла. Используйте операцию Применить входящие изменения, чтобы получить последнюю версию. | |
Сервер запрашивает статус контроля версий этого файла или ожидает ответа. Это появляется только в том случае, если вы используете централизованную систему контроля версий, например Perforce. |