Настройки Unity not Version Controlling Inspector для GameObjects

Я работаю над проектом Unity в команде, и, естественно, мы используем Github для контроля версий.

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

Работая над чем-то, мы подключаем объекты к скриптам и получаем что-то вроде этого:

ShareViewInspectorConnected

Но затем, когда мы переключаем ветки, мы получаем это, и нам нужно все переподключить:

ShareViewInspectorDisconnected

Это очень раздражает, так как проект продолжает расти! У нас есть два файла gitignore, один на корневом уровне проекта:

RootLevelgitignore

И один в ./Project

ProjectLevelgitignore

Есть и другие лгут, но я не думаю, что они каким-либо образом влияют на папку Project (где находится проект Unity).

Я лично думал, что Project/Library/assetDatabase3 был файлом, в котором хранятся настройки инспектора, но я ошибался.

Любая помощь очень ценится.


person bluey31    schedule 28.02.2018    source источник


Ответы (2)


Ваш gitignore не должен игнорировать метафайлы, они жизненно важны для работы единства. Базовый файл Unity .gitignore должен игнорировать только *.pidb.meta и *.pdb.meta.

Удалите записи *.cs.meta и *.meta.

person Foggzie    schedule 28.02.2018

Настройки инспектора для сцен хранятся в файле ресурсов сцены.

Находятся ли файлы ресурсов сцены и скрипты под контролем git?

Вы сможете увидеть измененные файлы в git, если отрегулируете настройки в одной из ваших сцен.

Редактировать Информация о скрипте хранится в файле сцены ShareView.unity. например

m_Script: {fileID: 11500000, guid: e639a2fe330734500b135115fa275a75, type: 3}

Указанный здесь guid должен соответствовать файлу script.meta, например.

fileFormatVersion: 2 guid: e639a2fe330734500b135115fa275a75

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

Предлагаем вам попробовать удалить файл базы данных активов из элемента управления git

Редактировать.

Да, git не игнорирует файлы .meta. Unity полагается на них, чтобы связать вещи воедино

person Dean Marcussen    schedule 28.02.2018
comment
Это файл ShareView.unity или что-то еще? Когда я что-то меняю в сцене, меняются только файлы ShareView.unity и assetDatabase3, которые оба являются vc'd. - person bluey31; 28.02.2018
comment
Спасибо за редактирование. Ранее я добавлял assetDatabase3 в качестве возможного решения проблемы, но похоже, что это не так, поэтому я снова добавлю его в gitignore. Так вы говорите, что я не должен игнорировать ShareView.meta файлы? - person bluey31; 28.02.2018