我们团队中的不同开发人员在这里有截然不同的复选框:
因此,Visual Studio 不断重新格式化代码,这确实污染了我们的提交。
我想要的是在每个开发人员的计算机上运行一个任何东西(.reg
文件或其他东西),以便这些设置保持一致。
我怎样才能做到这一点?
我们团队中的不同开发人员在这里有截然不同的复选框:
因此,Visual Studio 不断重新格式化代码,这确实污染了我们的提交。
我想要的是在每个开发人员的计算机上运行一个任何东西(.reg
文件或其他东西),以便这些设置保持一致。
我怎样才能做到这一点?
从 VS2017 开始,考虑.editorconfig
文件并允许覆盖本地首选项。将其置于项目解决方案的根目录(甚至更高),受源代码控制,以便将其与源代码一起分发给每个开发人员。
您可以通过 VS(自 v15.3 起)特定属性设置 .Net 编码约定,此处记录。
示例文件:
root = true
[*]
end_of_line = CRLF
insert_final_newline = true
[*.cs]
indent_style = tab
dotnet_sort_system_directives_first = true
csharp_space_after_cast = true
[*.xsd]
indent_style = tab
[*.json]
indent_style = space
indent_size = 2
[*.xml]
indent_style = space
indent_size = 2
[*.cshtml]
indent_style = space
indent_size = 4
对于 VS2017,IntelliCode实验扩展具有生成编辑器配置文件的功能,请参阅此博客文章了解更多信息。
从 VS2019 开始,VS 可以从“新文件”模板、您的代码库(右键单击项目 > Add > New EditorConfig)或您当前的 VS 配置(工具 > 选项 > 文本编辑器 > [C# 或基本] > 代码样式 > 常规)。
您可以使用“导入和导出设置”选项从工具菜单中的一个 Visual Studio 实例导出所需的设置。这会将设置保存到 .vssettings 文件(实际上是一个 xml 文件)中,其中包含类似
<PropertyValue name="TabSize">4</PropertyValue>
然后,您可以通过用户界面(相同的菜单选项)在其他机器上导入这些设置,也可以使用命令行从命令行加载它们
devenv.exe /Resetsettings <your settingsfile>
此命令行设置记录在此处