【问题标题】:VS 2013 Create Per-User Publishing SettingsVS 2013 创建每用户发布设置
【发布时间】:2025-12-07 20:50:01
【问题描述】:

我们最近升级到 Visual Studio 2013,但在处理发布的新方式方面遇到了一些问题。以前,(在 VS 2010 中)每个用户都有自己的本地发布设置,但在 VS 2013 中,它变成了共享发布设置的想法。这会导致我们的环境出现问题,因为每个开发人员都有不同的本地开发环境(路径、连接字符串、要发送内容的电子邮件地址)。我意识到这不是设置事物的最佳方式,但这是我们目前的现实情况。

我们使用配置转换来处理不同开发人员的各种 web.config 更改,因此仅通过 VS 运行对我们不起作用,因为它不运行转换。这也会导致 VS 2013 发布设置出现问题,因为最后使用的构建配置存储在共享发布设置中。为了使我们的所有设置保持不同,看起来我们现在还需要为每个开发人员设置不同的发布设置(例如“Local - Erik”、“Local - OtherDev”)。这只是在我最终想要摆脱的道路上走得更远。

所以我的问题归结为:是否可以以某种方式禁用共享配置文件设置?我想只是不将它们包含在版本控制中,但随后 Visual Studio 抱怨其他开发人员的系统上缺少这些文件。

感谢您的帮助!

【问题讨论】:

    标签: visual-studio visual-studio-2012 visual-studio-2013


    【解决方案1】:

    您可以通过在创建配置文件后从项目中排除配置文件来做到这一点。发布向导会在磁盘上查找任何配置文件,但默认情况下会将新创建的配置文件添加到项目中。如果您随后从项目中排除 .pubxml 文件并将其从源代码管理中删除,那么它应该不会再打扰您了。

    【讨论】:

    • 是否可以让它忘记一般的发布配置文件?我有一种感觉,有人会在每次创建新配置文件时忘记排除配置文件,而 VS 会继续添加它们。
    • @ErikDavidson 我不知道。我知道(不可自定义的)默认设置是将配置文件添加到项目中,这也会将其添加到源代码管理中。如果它确实被意外签入,它仍然是从项目中排除并将其从 VCS 中删除的手动修复。哦,如果从 VCS 中删除它会删除文件(在 TFS 中通常是这种情况),那么您还想复制它或以某种方式将其带回来,这样您就不必再次在 VS 中重新创建它。
    • @ErikDavidson 根据您的源代码管理,您可以为 .pubxml 添加忽略规则(例如,在 .gitignore 或 .tfignore 中)。如果有人忘记排除它,您最终可能会在项目文件中出现噪音,但这更容易修复。有关 .tfignore 的更多信息(因为它是最近的功能),请参阅msdn.microsoft.com/en-us/library/ms245454.aspx#tfignore
    • 我们正在使用 SVN 来执行此操作,我可以将 SVN 设置为忽略这些文件,但我仍然真的不喜欢当前的解决方案(不是你的错)!我想我现在只能忍受它,并真正推动让开发人员在本地设置相同的环境,这样我们就不必首先担心这个问题。我还环顾四周,看看我是否可以以某种方式为 VS 编写一个扩展,让它不向项目添加配置文件,但目前看来这是不可能的。不过,感谢您的帮助!
    最近更新 更多