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

Unreal 4项目使用Git LFS时提示未修改的.uasset文件存在变更如何解决

Unreal 4项目Git LFS下uasset虚假变更问题解决方案

问题根因

这类无修改却提示变更、丢弃无效的问题,核心诱因有两类:

  • Git行尾自动转换功能(core.autocrlf开启)将二进制格式的.uasset误识别为文本文件,自动修改了文件内的换行符,导致和仓库内的文件哈希校验不一致
  • 本地Git LFS没有正确拉取完整的资源文件,仅拉取了LFS指针文件,触发文件差异校验

临时解决当前虚假变更

  1. 先备份本地所有需要保留的有效改动,避免误操作丢失
  2. 关闭当前仓库的行尾自动转换:
git config core.autocrlf false
  1. 重置当前工作区并重新拉取全量LFS资源:
git reset --hard HEAD
git lfs pull --exclude=
  1. 如果仍有变更提示,清除Git缓存后再次重置:
git rm --cached -r .
git reset --hard

永久避免该问题复发

  1. 确保项目根目录的.gitattributes文件中明确标记Unreal资源为二进制格式,禁止行尾转换并绑定LFS规则,添加以下配置:

*.uasset filter=lfs diff=lfs merge=lfs -text
*.umap filter=lfs diff=lfs merge=lfs -text
*.uproject filter=lfs diff=lfs merge=lfs -text
*.uplugin filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.wav filter=lfs diff=lfs merge=lfs -text
*.fbx filter=lfs diff=lfs merge=lfs -text

  1. 团队所有成员统一配置全局Git关闭行尾自动转换,避免不同成员配置不一致导致问题反复出现:
git config --global core.autocrlf false

PR冲突处理

如果PR中已经因为这类虚假变更产生冲突,直接将冲突的资源文件回退到目标分支的版本即可,不需要合并差异:

git checkout 目标分支名(如main) -- 冲突文件的完整路径

提交后即可解决冲突。

内容的提问来源于stack exchange,提问作者Gabriel Luz Carpes

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 02:45:07