我应该在版本控制下放置Settings.Designer.cs吗?

Wil*_*ert 6 c# version-control visual-studio

Visual Studio自动生成此文件.在上面搜索信息告诉我永远不要编辑这个文件.很好,但是我需要将它存储在我的VCS中吗?还是VS可以在需要时自动重新生成它?

TJ *_*ler 7

我相信那个Settings.Designer.cs和其他类似的文件应该在版本控制之下。

我在此问题上使用其他答案的建议遇到了问题。

Settings.Designer.cs 只有在对 Settings.settings 进行更改时才会被修改,并且它是由 Visual Studio 自动生成的,而不是由构建工具自动生成的。

当我删除 Settings.Designer.cs 时,我遇到了 Visual Studio 没有按预期自动生成文件的问题,我不得不对我的项目进行多次重建/重新加载,直到它最终随机出现,我不确定是什么触发了它。

另外我在 TeamCity 构建服务器上遇到了问题,因为那里的构建工具没有生成文件,所以我遇到了构建失败,说它无法找到 Settings.Designer.cs

我在另一个问题的这个答案中找到了一个很好的经验法则,基本上如果构建系统修改了文件,那么不要将它放在源代码管理中,但是如果它仅在您对另一个文件进行更改并生成时才被修改通过visual studio,那么它可能应该在版本控制中。

此外,Visual Studio 2017 可以在创建新项目时自动创建带有 .gitignore 文件的 Git 存储库,默认情况下,所有 *.Designer.cs 文件都包含在 Git 存储库中。

  • 我认为这说明“默认情况下所有 *.Designer.cs 文件都包含在 Git 存储库中”。这应该是公认的答案。 (3认同)