git - Azure Git 部署到站点文件夹而不是 wwwroot

标签 git azure github laravel-4 bitbucket

尽管我找不到解决方案,但这似乎是一项简单的任务。我最近启动了一个 Laravel 4 项目,需要托管在 Azure 上。当发生更改时,我已将 Azure 链接到从 bitbucket 进行部署。但是,这会将文件推送到 Azure 中的“wwwroot”文件夹(公共(public)文件夹)。某些框架文件不应该位于公共(public)文件夹中,因此我想推送到父文件夹“site”。

经过一番研究,我发现您可以使用 .deployment 文件来配置部署选项 ( https://github.com/projectkudu/kudu/wiki/Deployment-hooks )

所以我尝试了.deployment 文件:

[config]
DEPLOYMENT_TARGET = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\site

不幸的是,这会导致错误:

源目录和目标目录不能互为子目录

这是因为存储库文件夹也位于站点文件夹中。如果我将部署文件更改为:

[config]
DEPLOYMENT_SOURCE = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\repo
DEPLOYMENT_TARGET = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\site

它运行时没有错误,但它不会推送任何内容,因为 repo 文件夹是空的,我想如果我能让 Azure 将文件放入\repo 而不是\site\repository ,一切都会好起来的。

也许我把事情复杂化了,我真的很感激任何建议。最坏的情况我可以推送到“wwwroot”文件夹并使用 web.config 来修复问题。

最佳答案

目前这还没有得到很好的支持,但您也许可以通过在应用设置中设置一些内容来使其工作:

SCM_REPOSITORY_PATH=..\repository
SCM_TARGET_PATH=..

这基本上告诉它将存储库直接放入VirtualDirectory0(而不是VirtualDirectory0\site),然后部署到VirtualDirectory0\site code>(与 VirtualDirectory0\site\wwwroot 相反)。

这假设您的存储库包含一个名为 wwwroot 的文件夹。

有关这些路径的一些信息 here

关于git - Azure Git 部署到站点文件夹而不是 wwwroot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18837772/

相关文章:

Git 文件超出符号链接(symbolic link)

git - 如何将 git 存储库转换为裸存储库

git - 如何使git clone与ssh一起使用?

c# - 如何使用 IConfidentialClientApplication 获取安全 Web API 的 token

azure - 使用 Azure 垂直扩展时是否会涉及停机时间?

azure - 使用 Azure Functions 中的 Google API

Github:来自 pull 请求中出现的不相关分支的提交

git - SourceTree - 如何 checkout 到远程 repo 分支

Github |为什么当我推送到特定分支时没有记录在我的贡献中

github - Github-删除错误输入的问题