我可以将项目的 composer.json 文件不放在根目录中吗?

Can I place the composer.json file for my project not on the root directory?

我正在实施一个我想通过 Packagist 分享的项目。通常,composer.json 文件会在项目根目录中,但我想将所有与 composer 相关的文件和目录都放在子目录 /private/composer 下。移动 composer.jsoncomposer.lockvendor 后,Packagist 无法在我的远程存储库中找到 composer.json,因此我的项目将不再自动更新。

是否可以做我想做的事,同时让 Packagist 自动更新项目?

我要实现的项目结构是这样的:

.
├── .editorconfig
├── .git
│   ├── branches
│   ...
├── .gitignore
├── .htaccess
├── license.txt
├── private
│   ├── composer
│   │   ├── composer.json
│   │   ├── composer.lock
│   │   └── vendor
│   │       ├── autoload.php
│   │       ...
│   ├── npm
│   │   ├── package.json
│   │   ├── package-lock.json
│   │   └── node_modules
│   │       ...
├── public
│   └── index.php
└── readme.md

No, it is not possible.

此外,即使可能,我也不推荐它 - 这是不寻常的配置,只会让您的软件包的用户感到困惑。