Files
openidea/docs/unity.md
T
Hacbit 7e9acdc59b feat(unity): detect projects and preserve asset metadata (#1207)
Unity projects (a folder with Assets and ProjectSettings/ProjectVersion.txt)
are detected without a generated solution: Assets / Packages become source
roots, ProjectSettings resources, and Unity's cache and build folders are
excluded before they exist. A Unity pane in the Project view shows the
editor version and hides .meta files, generated C# project files and
caches (each can be shown again).

Operations on assets under Assets keep their .meta files consistent:
rename and move carry the metadata (same GUID), delete removes both, copy
generates new GUIDs and updates references inside the copied group, and
file-move undo and workspace edits include the metadata. Destination
metadata conflicts and links inside the project are rejected before
anything changes.

Co-authored-by: hacbit <107751081+hacbit@users.noreply.github.com>
2026-11-05 02:16:06 +08:00

1.3 KiB

Unity projects

Open the folder containing Assets and ProjectSettings/ProjectVersion.txt. OpenIDEA detects Unity without requiring a generated solution and shows the editor version in the Unity project view.

The Unity view hides .meta files, generated C# project files and cache/build folders. Show Meta Files and Show Generated Files reveal them independently; the regular Project view is still available. Generated folders are excluded from indexing and search, including folders Unity creates after the project is opened.

Operations on assets inside Assets include their .meta files. Rename and move preserve GUIDs, deletion removes both files, and copy generates new GUIDs and updates references within the copied group. References to assets outside the group stay unchanged. File move undo and transactional workspace edits include metadata too. Destination metadata conflicts are rejected before making changes.

Projects may be opened through a linked root or parent directory, including macOS /var and /tmp. Links inside the project (including Windows junctions) are not followed by asset operations. For moves/copies to or from ordinary directories, the external path must have no linked ancestors. Cross-volume asset moves and copies that require rewriting binary serialized assets are rejected; use Unity for those operations.