Должен ли я sh папку библиотеки Unity в Github - PullRequest
0 голосов
/ 15 января 2020

Для школьного проекта я и 14 других людей делаем игру в Unity. Для этого проекта мы используем несколько пакетов, важными для этого вопроса являются TextMeshPro и новая система ввода от Unity. Чтобы исправить пару ошибок, которые мы испытываем, нам пришлось изменить 2 файла кода из этих пакетов, и всем в группе нужны эти файлы. Проблема заключается в том, что эти файлы находятся в папке «Библиотека» Unity, и я прочитал, что несколько человек говорят, что нет * * * * * * * этой папки на github, чтобы предотвратить конфликты слияния.

Таким образом, мой вопрос: я делаю sh папку библиотеки для github в этом конкретном c случае?

Ответы [ 2 ]

4 голосов
/ 15 января 2020

для ответа на ваш заголовок

НЕТ

Самый простой способ решить это - использовать "официальный" .gitignore для Unity от самого GitHub.

# This .gitignore file should be placed at the root of your Unity project directory
#
# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore
#
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/
/[Mm]emoryCaptures/

# Asset meta data should only be ignored when the corresponding asset is also ignored
!/[Aa]ssets/**/*.meta

# Uncomment this line if you wish to ignore the asset store tools plugin
# /[Aa]ssets/AssetStoreTools*

# Autogenerated Jetbrains Rider plugin
/[Aa]ssets/Plugins/Editor/JetBrains*

# Visual Studio cache directory
.vs/

# Gradle cache directory
.gradle/

# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.mdb
*.opendb
*.VC.db

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta
*.mdb.meta

# Unity3D generated file on crash reports
sysinfo.txt

# Builds
*.apk
*.unitypackage

# Crashlytics generated file
crashlytics-build.properties

Как вы можете видеть, папка Library - это самое первое, что игнорируется на самом деле по уважительной причине (см. ответ Игги ).


возможное исключение

Однако лично для меня имело смысл *1022* также хранить файлы .asset в папке Library. Это немного неудобно, но здесь такие вещи, как Buildsettings, TargetPlatform et c. хранятся, поэтому вам не нужно переключать его вручную при каждом клонировании.

Поэтому я всегда добавляю это исключение к .gitignore

!/[Ll]ibrary/*.asset

Подробнее об этом читайте в моем ответе Очистка и перенос существующего проекта Unity в новый или другой P C.


, отвечая на актуальную проблему

Я не знаю, какие ошибки вы получили с TMP, но вам вообще не следует изменять какой-либо код из пакетов !

Как вы заметили, это только временные изменения, если они вообще хранятся и не возвращаются немедленно PackageManager !

Из этого поста официальный ответ от Unity Technologies:

Да, в настоящее время [22 мая 2019] способ разработки пакета состоит в копировании / переместите его [из папки Library] в папку Packages вашего проекта.

Это преобразует пакет в внедренный пакет, который вы теперь можете изменять и извлекать sh вместе с папкой Packages.

2 голосов
/ 15 января 2020

Документация

Unity считывает и обрабатывает любые файлы, которые вы добавляете в папку «Ресурсы», преобразовывая содержимое файла во внутренние версии данных, готовые к игре. Фактические файлы активов остаются неизмененными, а обработанные и преобразованные версии данных хранятся в папке «Библиотека» проекта.

Использование внутренних форматов для активов позволяет Unity иметь готовые к игре версии ваших активов, готовые к использованию по адресу время выполнения в редакторе, сохраняя неизмененные исходные файлы в папке активов, чтобы вы могли быстро их редактировать и автоматически вносить изменения в редактор. Например, формат файла Photoshop удобен для работы и может быть сохранен непосредственно в папке «Ресурсы», но такие устройства, как мобильные устройства и графические карты P C, не могут принять этот формат напрямую для визуализации в качестве текстур. Все данные для внутреннего представления ваших активов в Unity хранятся в папке «Библиотека», которая может рассматриваться как папка кеша. Как пользователь, вам никогда не придется изменять папку библиотеки вручную, и попытка сделать это может повлиять на работу проекта в редакторе Unity. Однако всегда безопасно удалить папку библиотеки (хотя проект не открыт в Unity), так как все его данные генерируются из того, что хранится в папках Assets и ProjectSettings. Это также означает, что папка библиотеки не должна быть включена в систему управления версиями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...