Git(Windows):找回本地保存但未提交/暂存的R脚本文件
找回本地未暂存/未提交的R脚本修改
别慌!这种不小心弄丢本地未提交脚本的情况我也碰到过,下面几个方法按顺序试试,大概率能找回来:
1. 先扒一扒RStudio的自动恢复机制
RStudio其实偷偷帮我们存了不少临时文件,先从这里下手:
- 重启RStudio,重新打开你的项目,看看
File菜单里有没有Reopen Recent Files或者Recover Unsaved Documents的选项,直接点进去找你的脚本 - 如果没找到,手动去RStudio的自动保存目录翻:
- Windows:
C:\Users\[你的用户名]\AppData\Local\RStudio-Desktop\suspended-sessions - macOS:
~/Library/Application Support/RStudio/suspended-sessions - Linux:
~/.local/share/rstudio/suspended-sessions
里面的.rsession-data文件可以用普通文本编辑器打开,搜搜你脚本里的关键词,说不定就能找到丢失的内容
- Windows:
2. 让Git帮你挖挖隐藏痕迹
虽然你没暂存没提交,但Git的对象库可能还留着残片,打开项目根目录的终端,跑这几个命令:
- 先找出Git里所有“无主”的对象:
这个命令会把找到的文件丢到git fsck --lost-found.git/lost-found/文件夹里 - 接着用关键词搜索这个文件夹里的内容,比如你记得脚本里有
ggplot2相关的代码,就跑:
如果搜到匹配的文件,用grep -r "ggplot2" .git/lost-found/cat [文件名]查看内容,确认是你的脚本后,直接复制出来存成新文件就行
3. 系统级恢复工具兜底
如果上面的方法都没效果,就得上系统层面的恢复工具了:
- Windows:打开「文件历史记录」(之前开了备份的话),或者用Recuva这类免费工具扫描磁盘
- macOS:用Time Machine恢复到之前的时间点,或者Disk Drill这类工具找回删除的文件
- Linux:试试
testdisk或者photorec命令,它们能扫描磁盘上被删除但还没被覆盖的文件
4. 从RStudio历史记录里捞碎片
如果你之前在RStudio里运行过脚本里的代码,打开右上角的History面板,里面会保存你所有运行过的代码片段,把能找到的部分复制出来,慢慢重新整理成脚本也能挽回不少内容
内容的提问来源于stack exchange,提问作者Olivia
相关产品推荐
相关产品推荐

