Обновить проект, созданный с помощью composer create-project - PullRequest
0 голосов
/ 30 апреля 2020

Есть некоторые фреймворки, такие как laravel, которые рекомендуют установку с использованием create-project. Было бы сложно обновить проекты, подобные этому, с помощью composer, потому что

Создающий проект composer создает каркас со всеми начальными маршрутами в вашей конфигурации et c.

С самого первого момента, когда вы начинаете изменять маршруты по умолчанию, удаляя контроллеры по умолчанию и изменяя представления по умолчанию, ваш проект будет не синхронизирован c. потому что между тем laravel меняет скелет на более новые версии с некоторыми новыми маршрутами по умолчанию и т. д. c или изменяет структуру каталогов событий.

Однако недавно я видел, что phpmyadmin рекомендует composer create-project как возможный способ установки.

Поскольку phpmyadmin не просто предоставляет некоторые файлы скелетов для изменения пользователем, но и готовое законченное веб-приложение, я хотел бы знать, как лучше всего обновить установку phpmyadmin, созданную следующим образом: что?

1 Ответ

1 голос
/ 01 мая 2020

Я не знаю, существует ли официальный способ сделать это.

Согласно документам, create-project является эквивалентом:

выполнения git проверка clone / svn, за которой следует composer install поставщиков.

Если вы не изменили ни один из файлов, я думаю, что самым простым способом было бы просто удалить каталог и запустить composer create-project снова.

Если вы изменили некоторые файлы, вы можете выполнить слияние git (если в проекте используется git) и снова запустить composer update.

Если вы еще не создали проект, вы можете запустить create-project с флагом --keep-vcs, а затем каждый раз, когда вы захотите обновить его, вы можете cd выполнить проект и запустить:

git pull origin <version>
composer update

Если вы уже установили проект без --keep-vcs, вам придется сделать каталог репозиторием git, а затем добавить репозиторий проекта как удаленный. Чтобы найти репозиторий проекта, найдите его в Packagist . Например, для phpmyadmin:

cd phpmyadmin
git init
git add .
git commit -m "Add initial files"
git remote add git@github.com:phpmyadmin/composer.git
git pull origin <version> --allow-unrelated-histories -Xtheirs 
composer update

Некоторые из ваших изменений могут быть потеряны с помощью вышеуказанного git pull, хотя, поэтому сделайте резервную копию (и, возможно, исследуйте другие способы объединения несвязанных историй).

...