0

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

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

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

但仍然删除了用户图像。
任何人都知道如何防止删除文件夹内的图像?

4

1 回答 1

1

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

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

在此处输入图像描述

更多细节在这里 - https://envoyer.io/docs

部署生命周期

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

管理上传的文件

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

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

于 2017-03-31T21:01:21.183 回答