gpt4 book ai didi

php - composer prefer-dist 和 prefer-source 之间的区别?

转载 作者:IT王子 更新时间:2023-10-29 00:58:07 26 4
gpt4 key购买 nike

查看PHP Composer的install命令的帮助,看到以下两个选项

$ composer help install
Options:
--prefer-source Forces installation from package sources when possible, including VCS information.
--prefer-dist Forces installation from package dist even for dev versions.

什么是“dist”安装?我浏览了 Composer 网站和谷歌,但似乎没有任何东西可以解决这个问题(所以我认为这对于熟悉 Composer 的人来说是核心和显而易见的——为新手问题道歉)

我假设 --prefer-source 是 Composer 向 Packagist 询问存储库位置的位置,然后是 checkout/clone/export/etc。项目本身。

如果是这样,那么 --prefer-dist 从哪里下载?它下载什么?

最佳答案

根据http://getcomposer.org/doc/03-cli.md , --prefer-source 选项将更喜欢创建一个包目录,它是一个“版本控制存储库”。这相当于您输入:

$ git clone ...

$ svn checkout ...

--prefer-dist 选项会优先创建一个非“版本控制存储库”,相当于你输入:

$ git clone ... ; rm -fr dir/.git

$ svn export ...

此外,您可以在 composer.json 中为 sourcedist 定义单独的 repos。这是一个例子:

{
"repositories": [
{
"type": "package",
"package": {
"name": "joshuaclayton/blueprint-css",
"version": "master",
"source": {
"url": "git://github.com/joshuaclayton/blueprint-css.git",
"type": "git",
"reference": "master",
}
}
},
{
"type": "package",
"package": {
"name": "fiftyone/mobi-lite-php",
"version": "2013.03.06",
"dist": {
"url": "http://iweb.dl.sourceforge.net/project/fiftyone/51Degrees.mobi-Lite-2013.03.06.php.zip",
"type": "zip"
},
}
}
]
}

注意:无论出于何种原因,当我使用 --prefer-dist 时,有时会出现诸如

之类的错误
Fatal error: Cannot redeclare class Zend_Db_Adapter_Pdo_Abstract in ...

当我使用 --prefer-source 时不会出现。出于这个原因,我只使用--prefer-source,直到我找出这个问题的原因。

关于php - composer prefer-dist 和 prefer-source 之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16205100/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com