未推送的Git提交能否恢复被插件覆盖的Unity项目工作?
用未推送提交恢复Unity主场景的方案
完全可以通过本地未推送的提交恢复你的工作,具体步骤如下:
1. 确认目标提交记录
在终端执行git log,找到一周前包含正常主场景的提交,复制它的哈希值(一串字母数字组合)。
2. 处理当前未提交的更改
由于导入插件替换主场景的操作还未提交,分两种情况处理:
- 想保留插件导入内容:执行
git stash暂存当前未提交更改,后续可通过git stash pop找回这些内容 - 不需要插件导入内容:直接执行
git reset --hard <你复制的提交哈希>,本地代码会直接回退到目标提交版本,主场景将恢复至之前的状态
3. 解决大文件无法推送的问题
恢复后需处理之前的大文件问题,避免再次推送失败:
- 找到超过100MB的文件,执行
git rm --cached <大文件完整路径>,仅将文件从Git追踪列表移除,本地文件不会被删除 - 在项目根目录的
.gitignore文件中添加该大文件的路径,防止后续误提交 - 执行
git commit --amend,将移除大文件的操作合并到之前的提交中 - 最后执行
git push即可正常推送代码
内容的提问来源于stack exchange,提问作者VChuckShunA
相关产品推荐
相关产品推荐

