避免resx文件中的合并冲突

时间:2014-06-23 16:48:13

标签: c# resx

在我们的C#MVC项目中,我们将可本地化的字符串存储在.resx文件中。每次我们添加一个新字符串时,Visual Studio都将它放在文件的底部,这意味着如果在不同的分支中添加两个字符串,那么我们将得到合并冲突,因为两个不同的代码块被添加到同一个的地方。

我们如何减少合并冲突?按字母顺序排序字符串可能会有所帮助,但我看不到如何执行此操作。或者我们可以告诉git将每个<data>...</data>标记视为一个独立的块?

我们目前正在使用git,但TFS / TFVC遇到了同样的问题。

1 个答案:

答案 0 :(得分:7)

我们找到了ResXManager Visual Studio扩展,可以在保存时对ResX文件进行排序。

在Visual Studio中,选择工具&gt;扩展和更新。单击左侧面板中的“在线”,然后在右上角的框中搜索“ResXManager”并进行安装。

ResXManager install dialog

安装完成后,选择工具&gt; ResXManager,转到底部的Configuration选项卡,启用“保存RESX文件时,按键对XML数据节点排序”。

还有一个“现在排序所有文件”的按钮。对文件进行排序会产生大量冲突,因此请谨慎选择发布周期中的时间以最大限度地减少这些冲突。所有开发人员都需要安装ResXManager,但该设置将应用于解决方案,因此他们无需自行更改。

ResXManager configuration screen

我们刚刚开始使用它。当我们对它有一点经验时,我会更新这个答案。