我刚刚在我的 PC 上设置了一个本地存储库,它工作得很好。
但问题是,当我安装一个包时,composer 工具首先检查的是 packagist 存储库,而不是我的本地存储库。我希望首先检查本地仓库。这个怎么解决???
这是我的全局 config.json
{
"repositories": {
"local": {
"type": "composer",
"url": "http://localhost:9090"
}
}
有什么帮助吗?
我刚刚在我的 PC 上设置了一个本地存储库,它工作得很好。
但问题是,当我安装一个包时,composer 工具首先检查的是 packagist 存储库,而不是我的本地存储库。我希望首先检查本地仓库。这个怎么解决???
这是我的全局 config.json
{
"repositories": {
"local": {
"type": "composer",
"url": "http://localhost:9090"
}
}
有什么帮助吗?
萨蒂斯在运行吗?
请浏览http://localhost:9090以确保这一点。
Satis 需要正常运行,并且必须列出您的包,然后您才能使用composer.json(甚至将内容移至config.json)。
设置 Satis 的基本指南在这里:https ://getcomposer.org/doc/articles/handling-private-packages-with-satis.md#satis 。
如果您无法让 Satis 运行,请发布您的satis.json.
您可以尝试local从中删除密钥config.json并"packagist": false改为添加(以禁用 Packagist 查找)。
{
"repositories": [
{ "packagist": false },
{
"type": "composer",
"url": "http://localhost:9090"
}
]
}
我认为解决方案是将 -"packagist":false您项目的设置 - 与"require-dependencies": true您的满意配置结合起来。
这意味着您需要的所有包都不是由 Composer 直接从 Packagist 获取(关闭),而是通过 Satis 服务器间接获取。
Satis 将联系 Packagist 并将包下载到您的 Satis 空间(本地包缓存),然后 Composer 从那里获取它们。
我无法禁用 packagegist,因为我需要它用于其他包。
当您允许 Satis 获取它们时,您可以为项目全局禁用 packagegist。这些指令可能require-dependencies会require-all有所帮助。