140

ライブラリ A を書いているとします。これは別のライブラリ、たとえば monolog に依存しています。

monolog の最新バージョンをインストールしたいので、これを composer.json に入れます。

{
    "require": {
        "monolog/monolog": "*.*.*"
    }
}

それから私は走り$ php composer.phar installます。

composer.lock 内にインストールされているバージョンを見つけることを期待していましたが、そこにはありません:

{
    "hash": "d7bcc4fe544b4ef7561918a8fc6ce009",
    "packages": [
        {
            "package": "monolog/monolog",
            "version": "dev-master",
            "source-reference": "2eb0c0978d290a1c45346a1955188929cb4e5db7"
        }
    ],
    "packages-dev": null,
    "aliases": [

    ],
    "minimum-stability": "dev",
    "stability-flags": [

    ]
}

ライブラリを特定のバージョンのセットに結び付けたいので、バージョンが必要です。

    "require": {
        "monolog/monolog": "1.3.*"
    }

何か案は?

4

7 に答える 7

209

私はそれが古い質問であることを知っていますが...

composer.phar show

現在インストールされているすべてのパッケージとそのバージョン情報を表示します。(これは、以前のバージョンの Composer では、非推奨になった-iオプションを使用した場合にのみ表示されました。)

詳細を表示するには、パッケージの名前も指定します。

composer.phar show monolog/monolog

コミット MD5 ハッシュ、ソース URL、ライセンス タイプなど、多くの情報が表示されます。

于 2014-01-15T14:00:03.693 に答える
6

技術的には、「dev-master」は、そこで使用することになった正確なバージョンです。これは開発ブランチであり、したがって最新バージョンです。

コンポーザーパッケージで利用可能なバージョンを探すのに最適な場所はPackagistです。これは、パッケージをインストールしたときにコンポーザーがバージョンをロードする場所だからです。モノログのバージョンはhttp://packagist.org/packages/monolog/monologにリストされています。

于 2012-05-21T17:07:49.490 に答える
4

git バージョン管理システムを使用している場合、任意のパッケージを簡単に検索できます。

composer show |grep packagename

例えば

composer show |grep monolog

git をインストールしていない場合。このリンクからgrepプログラムをインストールできます。そして、それを環境変数にリンクします。リンク後にプログラムを環境変数にリンクする方法がわからない場合は、このリンクを表示できます。上記に同じコマンドを記述します

于 2021-05-31T15:24:09.967 に答える