【发布时间】:2018-06-09 14:57:24
【问题描述】:
我一直在CakePHP 中编写应用程序,它使用composer 安装来自GitHub 和其他来源的插件和其他存储库。
到目前为止,我使用将所有 vendor/ 文件添加到 Git 存储库,由于项目中安装了大量 composer,这大大增加了存储库的大小。
根据使用VCS 时的最佳实践,vendor/ 目录被添加到.gitignore 文件中,以防止推送到 VCS 存储库。
在我的CakePHP 应用程序中,我需要某种在GitHub 或其他来源上找不到的脚本。所以,我在
vendor/anuj-tbe/
导演。并在composer.json 文件中,使用
"autoload": {
"psr-4": {
"App\\": "src",
"AnujTbe\\": "vendor/anuj-tbe",
}
},
并且还想将脚本文件推送到 VCS,因为以后无法使用 composer 下载它。
1. vendor/ 是放置自定义脚本文件的正确位置吗?
2.除了我自己的目录,我可以忽略供应商文件吗?
【问题讨论】:
-
为什么把不是通过composer安装的文件放在
vendor目录下?这就是src等其他文件夹的用途 -
我放在那里以包含在
autoload中,并在应用程序的其他部分通过namespace使用。同样CakePHP的src目录包含模型、控制器、模板等。如果使用插件,也可能有许多src目录。 -
为什么不使用 src 来实现这一点,就像使用
App命名空间一样?下一次运行composer update将删除您手动创建的文件夹
标签: git cakephp version-control composer-php