如何让ReSharper/Rider团队共享设置:排除自动生成文件的保存格式化
解决方案:在ReSharper/Rider中共享式排除特定文件自动格式化
针对你遇到的ReSharper/Rider自动格式化IDE生成文件(如App.Config)导致格式冲突的问题,以下是两种可团队共享的有效解决方法:
方法一:使用.editorconfig配置(推荐,跨IDE兼容)
.editorconfig是跨IDE的代码风格配置文件,ReSharper/Rider会自动读取,且能通过版本控制同步给所有团队成员:
- 在解决方案根目录创建或编辑
.editorconfig文件 - 添加针对目标文件类型的禁用规则,以
.config文件为例:
# 禁用所有.config文件的ReSharper/Rider自动格式化 [*.config] resharper_disable_formatting = true # 可选:同时禁用Visual Studio自带的自动格式化,避免双重冲突 dotnet_format.enable = false
- 将
.editorconfig提交到版本控制,团队成员拉取后无需额外配置即可生效。
方法二:通过解决方案级DotSettings配置
如果仅需针对ReSharper/Rider生效,可直接修改解决方案级的DotSettings文件:
- 打开解决方案的
[你的解决方案名].sln.DotSettings文件(若不存在,可在ReSharper/Rider设置中点击"Save to Solution"生成) - 添加以下XML配置段(以排除
.config文件为例):
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> <s:Boolean x:Key="/Default/CodeStyle/Formatting/FileMasksToSkip/=*.config/@EntryValue">True</s:Boolean> </wpf:ResourceDictionary>
- 提交该DotSettings文件到版本控制,团队成员的ReSharper/Rider会自动加载该配置。
为什么之前的尝试无效?
File | Settings | Editor | Code Style | Do not format:是本地用户级设置,仅保存在个人配置文件中,不会同步到解决方案级DotSettings,因此无法共享给团队。- 2015年的旧答案针对的是ReSharper早期版本,新版本的格式化排除配置路径已变更,所以规则失效。
Inspection Settings | File masks仅用于排除代码检查,和自动格式化是独立的配置项,因此无法阻止格式化行为。
验证步骤
- 手动修改目标文件(如App.Config),调整部分内容的缩进
- 保存文件,检查是否未被ReSharper/Rider重新格式化
- 触发IDE自动修改该文件(如安装NuGet包添加binding redirect),确认格式不会出现冲突
内容的提问来源于stack exchange,提问作者awshelleyBeckman
相关产品推荐
相关产品推荐

