繁体   English   中英

有没有办法告诉作曲家只使用git仓库中一个文件夹的内容?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM