You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

提交Unity项目至GitHub后GameObject丢失资产,资产ID变更求助

解决Unity提交GitHub后资产ID变更、GameObject丢失关联的问题

以下是针对性的排查和修复方案:

1. 确保Unity使用GUID关联资产的核心设置

Unity依赖.meta文件存储的GUID关联资产,需确认项目设置未被修改:

  • 打开Unity编辑器,进入Edit > Project Settings > Editor
  • 将Asset Serialization设置为Force Text,Version Control设置为Visible Meta Files
  • 确认所有资产对应的.meta文件已被Git跟踪并提交,这些文件是GUID的载体,绝对不能忽略

2. 手动修复不一致的GUID

如果已出现GUID不匹配,可直接修正.meta文件:

  • 在本地正常运行的项目中,找到目标资产的.meta文件,记录其中的guid字段值
  • 对比GitHub仓库中对应资产的.meta文件,将仓库中错误的GUID替换为本地正确值
  • 提交修正后的.meta文件,拉取到其他环境后重新打开Unity,等待资产重新关联

3. 消除行尾符差异对.meta文件的影响

不同系统的行尾符自动转换可能破坏.meta文件结构:

  • 在项目根目录创建.gitattributes文件,添加以下内容:
    *.meta text eol=lf
    *.unity text eol=lf
    
  • 提交该文件后重新同步项目,避免Git自动转换行尾符导致GUID识别异常

4. 清理Git缓存并重新跟踪所有资产

若存在未正确跟踪的.meta文件,可能导致缓存混乱:

  • 执行以下Git命令:
    git rm -r --cached .
    git add .
    git commit -m "Fix: Re-track all assets and meta files"
    
  • 推送后重新拉取项目,打开Unity等待资产重新导入完成

5. 统一协作环境的Unity版本

确保所有参与协作的环境使用完全相同版本的Unity编辑器,不同版本可能会修改.meta文件的格式或字段,直接导致GUID关联失效

内容的提问来源于stack exchange,提问作者honzanugeta

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 03:13:10