[英]Is there a way to tell composer to use only the contents of one folder in a git repo?
我有几个小项目( php
)与VCS( git
)管理的单元测试( phpUnit
)和发布的开源( github
)。 我想使用依赖管理器( composer
)将这些小项目用作大型项目中的依赖项。
回购的结构如下:
/src/(files I want referenced by composer)
/phpUnit/(unit tests)
/doc/(documentation)
/(License & other meta-data)
当有人使用composer
加载这些小项目时,我只希望将/src
的内容返回到更大项目中的相应文件夹中。
有没有办法做到这一点? 我一直在寻找,但尚未找到解决方案。
如果这些文件位于composer/src/
不同子文件夹中,则可以将这些repos添加为composer repo的子模块 。
cd /path/to/composer
git submodule add -- /url/to/subrepo src/subrepo
然后一个简单的git clone --recusive /url/to/composer
将克隆一切。
创建.gitattributes
文件,如下所示:
/phpUnit export-ignore
/doc export-ignore
/license export-ignore
(add all other metadata files here as well)
Github将在为其发布的zip文件中排除这些文件和目录,因此如果用户使用--prefer-dist
安装该软件包,则不会安装排除的文件。
但实际上我更专注于指向其中一个子目录(
/src
)。
这不可能。 Composer是一个包管理器,由于包是一个有凝聚力的单元,因此部分安装它是没有意义的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.