[英]Composer install package from private GIT repository without the .git directory
我有一个项目X,它依赖于模块Y。它们都是我的私人项目。 每个人在bitbucket上都有自己的git存储库。 每个都有一个composer.json。
当我在项目X上运行composer install
时,它会从其存储库中获取Y并将其推到X的vendor
目录中。
问题在于它还会在vendor/jodes/Y/
一个.git
目录。
这是一个问题,因为某些东西会不断打开该.git目录中的文件,这意味着我的[持续集成]脚本无法在重复该过程时删除.git
目录。 我认为这是我的IDE。
X的composer.json是:
{
"name": "jodes/X",
"require": {
"jodes/Y": "dev-master"
},
"repositories": [
{
"type": "vcs",
"url": "https://Jodes@bitbucket.org/Jodes/Y.git"
}
]
}
看来,作曲家基本上是运行git clone
来从存储库中获取? 相反,有没有办法使其类似于git archive
进入vendor
目录? (而不是zip文件)。
作为一种解决方法,我尝试将我的IDE(Netbeans)配置为忽略.git
目录,但是在尝试删除它时,我的脚本仍会收到“权限被拒绝”错误。
另外,我还想利用git archive
的其他优点,例如能够指定文件或目录或其他将要从归档中排除的模式。
composer [install|update] --prefer-dist
应该可以。
默认情况下,尤其是在引用分支时,尤其是在引用分支(而不是标签(“版本”)时)时,作曲家更喜欢将依赖项作为源来获取。 如果指定--prefer-dist
,则明确告诉作曲家改用归档文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.