【发布时间】:2014-03-07 22:02:15
【问题描述】:
Visual Studio 自动生成此文件。搜索它的信息告诉我永远不要编辑这个文件。很好,但是我需要将它存储在我的 VCS 中还是 VS 可以在需要时自动重新生成它?
【问题讨论】:
标签: c# visual-studio version-control
Visual Studio 自动生成此文件。搜索它的信息告诉我永远不要编辑这个文件。很好,但是我需要将它存储在我的 VCS 中还是 VS 可以在需要时自动重新生成它?
【问题讨论】:
标签: c# visual-studio version-control
我认为Settings.Designer.cs 和其他类似文件应该受到版本控制。
我在使用other answer here 关于这个问题的建议时遇到了问题。
Settings.Designer.cs 仅在对 Settings.settings 进行更改时才会被修改,并且它是由 Visual Studio 自动生成的,而不是由构建工具生成的。
当我删除 Settings.Designer.cs 时,我遇到了 Visual Studio 没有按预期自动生成文件的问题,我不得不对我的项目进行多次重建/重新加载,直到它最终随机出现,我'我不确定到底是什么触发了它。
此外,我在 TeamCity 构建服务器上也遇到了问题,因为那里的构建工具没有生成文件,所以我有构建失败,说它无法找到 Settings.Designer.cs
我在this answer 的另一个问题上找到了一个很好的经验法则,基本上如果构建系统修改了文件,那么不要把它放在源代码控制中,但是如果它只在你对另一个文件进行更改时被修改文件并且是由visual studio生成的,那么它可能应该在版本控制中。
此外,Visual Studio 2017 可以在创建新项目时自动创建带有 .gitignore 文件的 Git 存储库,并且默认情况下所有 *.Designer.cs 文件都包含在 Git 存储库中。
【讨论】:
将这些项目添加到版本控制的问题是,不同版本的visual-studio,或者其他环境可能会以不同的方式生成这些文件。这有时会导致在构建服务器等上出现恼人的冲突错误。
VS 可以自动生成这个文件。
【讨论】:
阅读此答案后,我继续删除了 Properties/Settings.Designer.cs,但在构建“文件丢失”的项目时出现错误。我的项目仍然有对它的引用。因此,您还必须从项目中删除引用。
【讨论】: