如何在ReSharper DotSettings图层中使用相对路径

如何在ReSharper DotSettings图层中使用相对路径,resharper,Resharper,我们希望在多个解决方案之间共享.dot设置。我们的目标是拥有一个CodeStyle.DotSettings,我们在所有X.sln.DotSettings中将其作为一个层引用。但是,当我添加层时,我看到了意外的行为 我转到管理选项,右键单击解决方案X团队共享->添加层->打开设置文件,选择CodeStyle.DotSettings并单击打开 然后我检查X.sln.DotSettings,看到两个引用,一个使用绝对路径,另一个使用相对路径: C:\path\to\my\repo\CodeStyle.

我们希望在多个解决方案之间共享.dot设置。我们的目标是拥有一个CodeStyle.DotSettings,我们在所有X.sln.DotSettings中将其作为一个层引用。但是,当我添加层时,我看到了意外的行为

我转到管理选项,右键单击解决方案X团队共享->添加层->打开设置文件,选择CodeStyle.DotSettings并单击打开

然后我检查X.sln.DotSettings,看到两个引用,一个使用绝对路径,另一个使用相对路径:

C:\path\to\my\repo\CodeStyle.DotSettings ..\CodeStyle.DotSettings

签入本地存储库的绝对路径毫无意义,因此我尝试从X.DotSettings中删除该行,但它不再显示在“设置层”对话框中。相对路径的前导点似乎可疑,因此我尝试从中删除..\但它仍然没有显示在设置层中

我做错了什么


我们正在使用ReSharper 8.2.3

请参阅JetBrains的跟踪器中的相应问题:

不要删除任何内容:ReSharper尝试从两个路径加载文件,因此您应该可以。在过去两年中,我一直在多个解决方案之间使用类似的设置—共享和版本化的DotSettings,没有出现任何问题

无法删除绝对路径:它被用作密钥。你仍然可以投票支持这个问题。我个人不喜欢在受源代码控制的文件中有一个绝对路径,即使在这种情况下它没有坏处


关于额外的引导…\,我观察到同样的行为。我不知道为什么;路径是否相对于缓存文件夹而不是解决方案文件夹?无论如何,它是绝对需要的。

R保留绝对和相对路径,以适应使用注入文件层的所有场景。相对路径适用于源代码管理宿主的解决方案,注入的层文件也签入到同一源代码管理。绝对路径用于从外部资源注入文件,如计算机上的全局路径,或在源代码控制解决方案的情况下的网络共享

绝对路径当前是必需的。主要是出于历史原因。这可能会被更改为需要任何一个


相对路径相对于将其注入的主机层的磁盘文件。在您的情况下,它是.sln.DotSettings文件。为什么,它本来应该是它的文件夹,但我在实现它时错过了.Parent这个东西!而且它在测试或beta测试期间没有出现。比如,它适用于相对路径,到目前为止没有人费心计算双点%-

同意,这是令人困惑的。我已经对这个问题发表了评论并投了赞成票。UPD abs路径不再是强制性的,下一个版本wave02将只支持rel路径注入层。希望这已经过时了。使用R 2018.3.1,仍然添加了绝对路径,但从.sln.DotSettings文件中注释它似乎不会阻止“设置层”对话框识别它。