部署者 PHP 未从 Laravel 的存储文件夹中复制文件

Deployer PHP not copying files from Laravel's storage folder

我正在使用 Deployer PHP 和 laravel 以及 rsync 配方来部署我的 Laravel 项目,但由于某些原因,storage/app 文件夹中的文件没有被复制从 git 分支到服务器上的存储文件夹。 .gitignore 设置正确,我需要同步的文件实际上在 git 中。所以问题似乎出在 Deployer 没有将文件复制到 shared/storage/app 文件夹

storage/app/.git忽略:

*
!.gitignore
!public/
!public/*
!templates/
!templates/*
!templates/fonts/
!templates/fonts/*

deployer.php

<?php declare(strict_types=1);

namespace Deployer;

// Include the Laravel & rsync recipes:
require 'recipe/rsync.php';
require 'recipe/laravel.php';

 ...

set('rsync_src', function () {
        return __DIR__ . '/www'; // My LAravel project is in a sub folder of the git branch
    });

// Configuring the rsync exclusions.
add('rsync', [
        'exclude' => [
            '.git',
            '/.env',
            '/storage/framework/',
            '/storage/logs/',
            '/vendor/',
            '/node_modules/',
            '.gitlab-ci.yml',
            'deploy.php',
        ],
    ]);

 ...

关于这里可能出现的问题和可能的解决方案有什么想法吗?

这似乎是设计使然。 Deployer 将 /storage 作为共享文件夹进行管理,因为它包含您可能希望跨版本保留的信息,例如会话、日志等。

我猜想以这种方式移动的文件如果在 /resources 下维护它们会更好