禁用ReSharper在代码重新格式化期间的代码重排序?

4

我使用ReSharper中的代码重构工具对我的代码进行标准格式化,但我不喜欢它移动方法。

例如,如果我重命名一个方法,然后重新格式化,该方法就会被移动。这使得在分支之间合并更改变成了一场噩梦。

是否有任何我错过的设置可以禁用此特定部分的重新格式化?

2个回答

3

设置自定义的R#配置文件

点击Resharper > 工具 > 代码清理

然后选择“编辑配置文件”,添加一个新的配置文件,取消选择不需要的内容并保存。

将来可以运行此配置文件。


我希望有一个在这之外的设置,因为现在我只需要按下 Ctrl+E, Ctrl+C, Enter 就可以进行清理操作了。 - Lasse V. Karlsen
这些自定义配置文件似乎没有保存在我提交到源代码控制的共享resharper文件中。是这样吗?如果是这样,那么它对我来说似乎没有什么用处。 - Lasse V. Karlsen
你不需要修改Type Members Layout xml吗? - yeyeyerman
@yeye:如果您添加一个这样的答案,我会接受它。我已经指定设置应该按解决方案共享,所以覆盖保存在本地的 .ReSharper 文件中,效果很好。最终只清除了整个类型布局 XML 的部分,但保留了模式文档的起始/结束标记。这样做有效并且保留了我重命名的方法。 - Lasse V. Karlsen
我一直偏爱使用 Ctrl+K,Ctrl+D,Enter。据我所知,这样做可以得到相同的结果。 - MrBoJangles
显示剩余2条评论

1
你需要修改Type Members Layout xml文件。在该文件中,你可以重新排序或删除几个模式以获得所需的行为。你对该文件所做的所有更改都将反映在以下文件中:
C:\Documents and Settings\user\Program Data\JetBrains\ReSharper\v4.5\vs8.0\UserSettings.xml
因此,在操作之前,你可以备份它或将其添加到源代码树中。

1
由于我使用的是“共享,每个解决方案”,因此该设置实际上存储在本地的SolutionFile.5.1.ReSharper文件中,因此它在源代码控制下很容易恢复。然而,我发现只有在关闭解决方案时才会保存对此文件的设置。我想知道我是否应该将所有设置都保存在源代码控制中。无论如何,感谢您的答案,这正是我所需要的。 - Lasse V. Karlsen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接