ホームページ  >  記事  >  開発ツール  >  Composer のアップデートは注意して使用してください。

Composer のアップデートは注意して使用してください。

藏色散人
藏色散人転載
2020-07-13 13:28:106595ブラウズ

composer の次のチュートリアル コラムでは、composer update を使用する場合の注意点について説明します。困っている友人の役に立てば幸いです。

Composer のアップデートは注意して使用してください。

#問題の説明既存のプロジェクトに拡張パッケージを追加する必要があることがよくあります。次の図はこのドキュメントから引用したものであるため、ドキュメント内のガイダンスが間違っているためです。

Composer のアップデートは注意して使用してください。composer update このコマンドは、現在のロジックではプロジェクトに大きな損害を与える可能性があります。

コンポーザーの更新のロジックは、composer.json で指定された拡張パッケージのバージョン規則に従って、すべての拡張パッケージを最新バージョンに更新することであるため、すべての拡張パッケージであることに注意してください。プロジェクト Monolog を使用しました。当時の構成情報は

"monolog/monolog": "1.*",

でした。monolog 1.1 のバージョンがインストールされました。しかし、1 か月以上経った現在、monolog はすでに 1.2 になっています。コマンドを実行すると、直接更新されます。 1.2 に対してテストを行った後、プロジェクトは突然非常に不安定になりました。特に、プロジェクトの完全なカバレッジ テストを作成していない大規模なプロジェクトでは、状況はこれよりも悪化することがあります。何かが壊れました。あなたにとっては、全く分かりません。

どのコマンドを使用する必要がありますか?インストール、アップデート、または必要ですか?

次に一つずつ説明していきます。

#簡単な説明

composer install - 如有 composer.lock 文件,直接安装,否则从 composer.json 安装最新扩展包和依赖;
composer update - 从 composer.json 安装最新扩展包和依赖;
composer update vendor/package - 从 composer.json 或者对应包的配置,并更新到最新;
composer require new/package - 添加安装 new/package, 可以指定版本,如: composer require new/package ~2.5.
#プロセス

いくつか紹介しましょう皆様の理解を促進し、より深めるための日々の制作プロセス。 プロセス 1: 新しいプロジェクト プロセス

composer.json を作成し、依存する拡張機能パッケージを追加します;

コンポーザー インストールを実行し、拡張機能パッケージをインストールし、composer.lock を生成します;

コンポーザーを送信しますgit;


プロセス 2: プロジェクトの共同作業者が既存のプロジェクトをインストールする
プロジェクトのクローンを作成した後、ルート ディレクトリで直接、composer install を実行して、composer から指定されたバージョンをインストールします。 .lock 拡張機能パッケージとその依存関係;

このプロセスは、運用環境コードのデプロイメントに適しています。

プロセス 3: プロジェクトに新しい拡張機能パッケージを追加します。

composer require bender/package を使用して拡張機能パッケージを追加します。
更新された Composer.json とコンポーザーを送信します。コードにロックします。バージョン コントローラー内で次のようになります。 git;


composer.lock ファイルについて

combos.lock ファイルには、次のようなファイルが保存されます。各コードの依存関係 バージョン レコード (下図を参照) はバージョン コントローラーに送信され、composer のインストールと組み合わせて使用​​され、チーム内のすべての共同作業者の開発環境およびオンライン運用環境で実行されるコード バージョンの一貫性が確保されます。

关于扩展包的安装方法

那么,准备添加一个扩展包,install, update, require 三个命令都可以用来安装扩展包,选择哪一个才是正确的呢?

答案是:使用 composer require 命令

另外,在手动修改 composer.json 添加扩展包后,composer update new/package 进行指定扩展包更新的方式,也可以正确的安装,不过不建议使用这种方法,因为,一旦你忘记敲定后面的扩展包名,就会进入万劫不复的状态,别给自己留坑呀。

上面的概念不论对新手或者老手来说,都比较混淆,主要记住这个概念:

原有项目新添加扩展的,都使用 composer require new/package 这种方式来安装。

需要加版本的话

composer require "foo/bar:1.0.0"

更新指定扩展到指定版本

有时候你之前使用过的扩展包,加入了新功能,你想更新单独这个扩展包到指定版本,也可以使用 require 来操作。

如下面例子,需要更新 “sami/sami”: “3.0.” 到 “sami/sami”: “3.2.” 
Composer のアップデートは注意して使用してください。

命令行运行: 
Composer のアップデートは注意して使用してください。 

以上がComposer のアップデートは注意して使用してください。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。