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": truesatis configを組み合わせることだと思います。

これは、必要なすべてのパッケージが Composer によって Packagist から直接 (オフに) フェッチされるのではなく、Satis サーバーを介して間接的にフェッチされることを意味します。

Satis は Packagist に連絡し、パッケージを Satis スペース (ローカル パッケージ キャッシュ) にダウンロードし、Composer はそこからパッケージを取得します。

他のパッケージに必要なため、packagist を無効にすることはできません。

Satis がそれらを取得できるようにすると、プロジェクトの packagist をグローバルに無効にすることができます。ディレクティブrequire-dependenciesrequire-allが役立つ場合があります。

于 2016-01-03T15:50:49.040 に答える