我们已经设置了一些用于将Web应用部署到各种服务器的发布配置文件,这一切都可以通过一键部署来实现。
但是,我们发现即使整个解决方案都在源代码控制(SVN)下,配置文件似乎也没有结转,所以我们需要手动在每个开发人员的机器上重新创建配置文件。
似乎由于配置文件仅存在于当前加载的解决方案中,因此它们必须存储在某处的解决方案文件中。但是,当其他人进行更新以下拉代码时,它们不会延续。
我猜他们所处的文件是我们在源代码控制项目中没有涉及的文件,但是我无法找出哪一个文件。
有人必须知道发布配置文件的存储位置。有没有办法从机器到机器复制它们,这样我们就不必为每个开发人员重新键入它们了?
答案 0 :(得分:37)
文件名实际上是$(ProjectName).Publish.xml,并且应该与.csproj文件位于同一文件夹中。如果在解决方案资源管理器中启用“显示所有文件”选项,它将显示,您可以从那里将其包含在项目中。这将使其进入源代码控制。
有一点需要注意:如果您尝试更改并保存配置文件设置,VS将不会自动检出此文件,但它也不会引发错误。如果你注意的话,在其中一个输出窗口中有关于它的警告;否则它只是看起来忽略了你的变化。
答案 1 :(得分:18)
为了保持SO最新,从VS2012(或VS2010 with Azure SDK 1.7+)开始,发布配置文件现在存储在Properties\PublishProfiles\$(ProfileName).pubxml
用于Web应用程序,App_Data\PublishProfiles\$(ProfileName).pubxml
用于网站。
它们现在也是MSBuild文件,并且应该按照记录的How to: Edit Deployment Settings in Publish Profile (.pubxml) Files
定义属性答案 2 :(得分:1)
我遇到此问题的原因是.user
个文件:我注意到设置已保存在Properties/PublishProfiles/$(ProfileName).pubxml
中,但部署所需的实际凭据保存在.user
个文件中被排除在源头控制之外。
答案 3 :(得分:0)
在我的Visual Studio 2010安装网站项目中,这些文件位于App_Date \ PublishProfiles下。