title: unity-lua打包成AssetBundle后md5不一致问题
categories: Unity3d
tags: [unity, lua, assetbundle, md5]
date: 2020-07-04 15:58:25
comments: false
mathjax: true
toc: true
unity-lua打包成AssetBundle后md5不一致问题
前篇
unity3d 项目中的 lua 脚本是打成 AssetBundle 的方式进行热更, 遇到了看上去 相同 的 lua 代码, 但是不同机子打出来的 md5 不一致, 同一机子打出来的 md5 有时 也不一样的问题.
但是美术资源打成 AssetBundle 就没有遇到这样的问题, 为啥??
一番研究之后终于找到问题所在.
真相
主要原因有两个
-
lua 文件没有对 git 的 换行符 做限定, 导致文件的的 md5 发生变化, 但有 diff 不出来.
解决办法: 所以要对 git 做 换行符限定, 同一成 LF 最好.
-
打包是将 lua 考到 Assets 目录内的临时目录时, 重新生成了新的
.meta
文件, 导致打出来 AssetBundle 的 md5 发生变化.解决办法: 将临时目录页上传到 git 做版本控制, 打完包也不要删除 (主要是不删除
.meta
文件)
解决完这两个问题, 就能保持 md5 一致.