当前位置: 首页 > news >正文

ReSharper 在 C 盘占用了太多空间了,本文告诉你如何安全地删除或转移这些文件

一个不小心,我的 SSD 又满了。到底是谁占用了那么多的空间!如果你是 ReSharper 的重度用户,那么可能你的调查结果会直指 JetBrains ReSharper。

本文将告诉你如何安全地删除这些文件来释放你的 C 盘空间,然后在 ReSharper 中设置其他的缓存目录。


本文内容

      • 消失的 C 盘空间
      • 删除 ReSharper 的缓存目录
      • 转移 ReSharper 的缓存目录
        • 参考资料

消失的 C 盘空间

SSD 很贵的,看看都满成什么样儿了……我一个 SSD 分成了 C 和 D 两个分区,都满了。

近乎满了的 SSD

你可以使用 SpaceSniffer 来快速调查占用你大量 C 盘空间的到底是些什么文件。我之前写过一篇文章介绍如何使用它:

  • 找回你 C 盘丢失的空间(SpaceSniffer)

当你是 ReSharper 的重度用户的时候,你很有可能会看到如下的场景:

JetBrains 家的软件竟然占据了这么多空间

是的,JetBrains 家的软件竟然占用了 17.2GB 的 C 盘空间!他们一定认为所有的用户都是土豪,能够买 500GB 以上的 SSD 全部分配给 C 盘。

好的,吐槽就到这里,我们进入正题——删除这些文件。

删除 ReSharper 的缓存目录

注意:只有 Transient 文件夹是可以删除的

ReSharper 安装时的目录都在 %LocalAppData%\JetBrains 中。虽然运行时的缓存也在这里,但是如果你直接把这个目录删掉了,那么 ReSharper 插件以及 JetBrains 全家桶也就不能正常使用了。

Transient 意思跟 Temporary 差不多,就是短暂使用的文件。不过 ReSharper 竟然在这里堆了这么多。

Transient

删除掉这个文件夹不影响 ReSharper 及其他 JetBrains 全家桶的正常运行。

ReSharper 在设置中提供了清除缓存的按钮,但那个按钮点了其实释放不了多少空间的,本文最后一句将说明这个问题。

删除 Transient 目录

转移 ReSharper 的缓存目录

  1. 从 Visual Studio 的菜单中进入 ReSharper 的设置界面:ReSharper -> Options;
  2. 进入缓存设置选项:Environment -> General -> Caches -> Store solution。

在这里可以修改 ReSharper 缓存文件的存储位置。

不过可得提醒你一下,ReSharper 这么耗性能的插件,还是老老实实放 SSD 里面吧,SSD 再怎么贵比起你的时间来说可便宜多了呀!

ReSharper Options

更改缓存目录

可以在这个界面中看到,ReSharper 其实是提供了清除缓存的按钮(Clear)的,但是这个按钮点击之后其实只是会删除当前项目的缓存。而实际上 ReSharper 在你的电脑上积攒久了是众多缓存文件一起占用的太多空间,只删除最近正在使用的这个项目其实根本释放不了多少空间的。(比如我打开我的 Walterlv.CloudKeyboard 项目清除结果只删掉了不到 100M 的空间。)


参考资料

  • Remove old caches – ReSharper Support - JetBrains

我的博客会首发于 https://walterlv.com/,而 CSDN 和博客园仅从其中摘选发布,而且一旦发布了就不再更新。

如果在博客看到有任何不懂的内容,欢迎交流。我搭建了 dotnet 职业技术学院 欢迎大家加入。

知识共享许可协议

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名吕毅(包含链接:https://walterlv.blog.csdn.net/),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系。

相关文章:

  • WPF 让普通 CLR 属性支持 XAML 绑定(非依赖属性),这样 MarkupExtension 中定义的属性也能使用绑定了
  • git 的合并原理(递归三路合并算法)
  • git 合并策略
  • .NET/C# 将一个命令行参数字符串转换为命令行参数数组 args
  • .NET/C# 获取一个正在运行的进程的命令行参数
  • 使用一句 git 命令将仓库的改动推送到所有的远端
  • 将 svn 仓库迁移到 git 仓库
  • 使用 Visual Studio 调试多进程的程序
  • 如何更精准地设置 C# / .NET Core 项目的输出路径?(包括添加和删除各种前后缀)
  • .NET 使用 JustAssembly 比较两个不同版本程序集的 API 变化
  • Windows 上的应用程序在运行期间可以给自己改名(可以做 OTA 自我更新)
  • 为 WPF 程序添加 Windows 跳转列表的支持
  • 在 Windows 系统上降低 UAC 权限运行程序(从管理员权限降权到普通用户权限)
  • 专栏素材
  • Visual Studio 如何能够不进行编译就调试 .NET/C# 项目(用于解决大项目编译缓慢的问题)
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • Akka系列(七):Actor持久化之Akka persistence
  • Angular 2 DI - IoC DI - 1
  • docker-consul
  • Docker下部署自己的LNMP工作环境
  • echarts的各种常用效果展示
  • Invalidate和postInvalidate的区别
  • JavaScript学习总结——原型
  • Js基础知识(四) - js运行原理与机制
  • JS字符串转数字方法总结
  • miniui datagrid 的客户端分页解决方案 - CS结合
  • PAT A1120
  • Python学习之路13-记分
  • Redis提升并发能力 | 从0开始构建SpringCloud微服务(2)
  • Vim 折腾记
  • 初识 beanstalkd
  • 记录一下第一次使用npm
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • 我与Jetbrains的这些年
  • 协程
  • 一个项目push到多个远程Git仓库
  • 在Unity中实现一个简单的消息管理器
  • 做一名精致的JavaScripter 01:JavaScript简介
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #1014 : Trie树
  • (16)Reactor的测试——响应式Spring的道法术器
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (C#)获取字符编码的类
  • (笔试题)合法字符串
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (接口封装)
  • (转)德国人的记事本
  • (转)母版页和相对路径
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET 使用 XPath 来读写 XML 文件
  • .net 提取注释生成API文档 帮助文档
  • .NET/C# 在 64 位进程中读取 32 位进程重定向后的注册表
  • .NET开源项目介绍及资源推荐:数据持久层
  • .NET与java的MVC模式(2):struts2核心工作流程与原理