2

我刚刚在我的 PC 上设置了一个本地存储库,它工作得很好。

但问题是,当我安装一个包时,composer 工具首先检查的是 packagist 存储库,而不是我的本地存储库。我希望首先检查本地仓库。这个怎么解决???

这是我的全局 config.json

{
"repositories": {
    "local": {
        "type": "composer",
        "url": "http://localhost:9090"
    }
}

有什么帮助吗?

4

1 回答 1

0

萨蒂斯在运行吗?

请浏览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-dependenciesrequire-all有所帮助。

于 2016-01-03T15:50:49.040 回答