1

我已经设置我的本地 SVN 存储库来保存所有外部存储库(公司策略),使用 Satis 我创建了 packages.json 文件。当我运行 composer update 我如何告诉它使用我的自定义 packages.json 文件并从我的本地仓库而不是外部提取?

这是我的 svn 存储库所在位置的 packages.json 文件中的简介:

"source": {
    "type": "svn",
    "url": "http://blah/packagist/foo/bar",
    "reference": "/tags/2.3.0/@38"
}

但我用来检查这个项目的网址是:

http://blah/packagist/foo/bar/tags/2.3.0    

在我的 composer.json 文件中,我还添加了这个:

"repositories": [
    {
        "packagist": false,
        "type": "composer",
        "url": "http://local/packages.json"
    }
]

但它仍然从 git 而不是我的 svn repo 中提取,我做错了什么???

4

1 回答 1

5

第一步是像这样正确禁用packagist:

"repositories": [
    { "packagist": false },
    {
        "type": "composer",
        "url": "http://local/packages.json"
    }
]

那么我猜如果你需要的包在你的本地仓库中不存在,你可能会得到一个错误。

也就是说,如果它没有捡起它,这可能意味着您的 satis repo 没有包含您需要的所有包,因为如果它们在那里,它们应该优先于 packagegist 的包。如果您只有标签,尽管它可能会选择打包者,因为它们包含 dev-master 和更高的 prio 版本。

于 2012-11-07T19:59:48.853 回答