Visual studio 2010 开发->;阶段->;针对Azure网站的Git部署Prod
使用Git部署for Azure,我应该如何最好地实现以下部署目标Visual studio 2010 开发->;阶段->;针对Azure网站的Git部署Prod,visual-studio-2010,azure,azure-git-deployment,Visual Studio 2010,Azure,Azure Git Deployment,使用Git部署for Azure,我应该如何最好地实现以下部署目标 在本地工作时,可以轻松切换以使用假内存数据或(最终)真实数据的非生产快照 部署到Azure上的暂存环境中,这样我首先可以使用假内存数据,最终可以移动到真实数据的非生产快照 使用真实数据部署到生产环境 我目前使用Github和一个临时分支部署到一个临时Azure网站。由于我部署到公共repo,git会忽略web.config文件。(编辑:我刚刚了解到忽略web.config实际上会导致azure上的部署错误) 非常感谢您的帮助
- 在本地工作时,可以轻松切换以使用假内存数据或(最终)真实数据的非生产快照
- 部署到Azure上的暂存环境中,这样我首先可以使用假内存数据,最终可以移动到真实数据的非生产快照
- 使用真实数据部署到生产环境
非常感谢您的帮助/建议。嗯。。。这是我现在做的对我有用的事情
- 为了在本地伪内存数据之间快速切换,我使用编译符号
和预处理器指令LOCAL
#if LOCAL
- 当您部署到Azure时,同样的编译符号也会起作用,所以我可以处理假数据,直到我准备好切换到真实数据库为止。如果我真的想更轻松地切换,我也可以使用应用程序设置
.deployment
文件:
[配置]
command=deploy.my.cmddeploy.my.cmd
:
xcopy%DEPLOYMENT\u TARGET%\Web.config%DEPLOYMENT\u SOURCE%\\\/Y
deploy.cmd现在,我有了web.config,其中包含本地机密。Git忽略这个文件。我通过FTP将正确的web.config上传到Azure,每次部署时都会用到它。事实上应该比这更简单。请看。基本上,您的想法是在Azure门户中设置一些应用设置,以覆盖提交给您的回购的默认值。我做到了,David。我也读了你的博客。问题是,如果存储库中没有web.config,Azure将无法通过Github部署(即使它是通过FTP手动上载到wwwroot的)。我需要在本地保留真实的连接字符串,以连接到SQL Azure并部署它,但在公共Github存储库中不可见。另一个理想的解决方案是在Git中有一个“假”web.config,它将在Azure上运行时获取真实值并“在构建时转换”web.config通过类似web.local.config的方式在本地运行。但我无法让它工作。请注意,Azure构建几乎与在VS中执行“部署到文件系统”完全相同,因此您可以在本地重新处理相同的问题。您使用构建时转换的替代解决方案在理论上也应该有效。顺便说一句,对于git Azure问题来说,这可能是一个更好的地方。我将在Scott Hanselman的基础上进行另一次构建尝试