推送bitbucket中的代码删除服务器文件

时间:2017-03-10 09:33:33

标签: git laravel bitbucket forge envoyer.io

我正在使用Laravel Forge并将其连接到Envoyer,当我将代码推送到bitbucket master分支(连接到实时服务器)时,它会删除所有用户文件(例如用户个人资料图片和...)。

我每次都以两种不同的格式尝试.gitignore

/public/images/profile/*
#and
/public/images/profile/

但仍会删除用户图片 任何人都知道如何防止删除文件夹中的图像?

1 个答案:

答案 0 :(得分:1)

每次部署时,Envoyer都会使用您的存储库中的新代码创建新目录。您的文件并未真正删除,这些文件仍在先前部署文件夹中的服务器上。

要解决此问题,请将用户文件放在存储目录中。然后转到Envoyer -> Deployment Hooks -> Manage Linked Folders并添加以下内容:

enter image description here

此处有更多详情 - https://envoyer.io/docs

  

部署生命周期

     

当您的项目触发部署时,Envoyer将执行您的部署计划。默认情况下,这包括下载项目的tarball,安装Composer依赖项,将当前符号链接指向最新版本,最后从服务器中清除任何旧部署。

     

管理上传的文件

     

存储用户上传的文件时,如果使用的是Laravel,则应将它们存储在应用程序的存储目录中。然后,您可以使用Envoyer的“管理链接文件夹”功能来创建从公共目录到存储目录的符号链接。可以在项目的“部署挂钩”选项卡上找到“管理链接文件夹”按钮。

     

如果您不使用Laravel,您基本上将遵循相同的过程。但是,您需要在应用程序的部署路径中手动创建存储目录(与当前符号链接的目录级别相同)。