我有一个带有 ubuntu 的 vps,我想使用 Git 部署我的 Laravel 应用程序。Laravel 有一些用于框架本身的文件夹(app、bootstrap、vendor)和一个用于公共文件(“public”、lol)的文件夹,所以我希望将所有这些框架文件夹放在 apache 服务器的“www”文件夹之外,并且将“public”文件夹的内容复制到“www”。我已经读过关于制作一个钩子,将所有推送的文件复制到 www 文件夹(使用结帐),但我不想将所有文件签出到 www,只是那些在“公共”内部的文件和其余的将文件(laravel 文件)推送到外部。
我的文件夹结构是:
- myapp(从我的本地仓库推送)
- Laravel 框架文件夹
- Laravel 公用文件夹
- 万维网
- 来自 laravel 的公用文件夹的内容
我怎样才能实现这种结构?我使用的是一个裸仓库,所以我可以推送它,但由于它是“裸的”,我没有文件的副本,我不能写一个接收后挂钩,比如:清空 www 文件夹并复制所有内容var/myapp/public 给它。另一种选择是将所有文件(公共和非公共)都放在 www 文件夹中,这样我就可以使用 checkout 方法,但我在某个地方读到了最好将所有应用程序逻辑放在公共 www 文件夹之外的地方。
谁能帮我一把?提前致谢。