Большинство фреймворков PHP предлагают скелет или голый дистрибутив для создания нового экземпляра. Когда я создаю новый проект на основе такого скелетного проекта, я могу запустить composer create-project foo/some-framework my-new-project
,
Как я узнаю, в более поздний момент времени, какая версия фреймворка использовалась первоначально для моего проекта?
Допустим, я написал проект с версией 3.0.0 фреймворка. Через несколько месяцев фреймворк доступен в версии 5.1.0. Я хочу обновить сейчас, но какую версию я использовал … это была версия 3.0.0 или 4.0.0 или 4.2.0?
Какова лучшая практика для этой ситуации? Документировать версию в какой-то дополнительный файл? Всегда призывать фреймворк хранить версию в файле?
Ну, для composer у вас есть файл composer.lock и обычно вы можете посмотреть в этом файле, какая версия установленных пакетов, например, в одном из моих проектов в composer.lock
Я имею:
{
"name": "laravel/framework",
"version": "v5.5.14",
так что я знаю, что версия 5.5.14 установлена.
Очевидно, что для Laravel вы также можете запустить:
php artisan --version
получить версию Laravel или открыть \vendor\laravel\framework\src\Illuminate\Foundation\Application.php
файл, и вы увидите там:
const VERSION = '5.5.14';
Для разных версий при установке через composer вы можете указать версию, которую вы хотите установить следующим образом:
composer create-project laravel/laravel your-project-name 5.3.*
так что в приведенном выше случае вы решили установить версию 5.3 (на данный момент уже выпущен Laravel 5.5)
Других решений пока нет …