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