Estou tentando instalar uma versão específica de um pacote usando o Composer. Eu tentei composer install
e composer require
eles estão instalando a versão mais recente do pacote. E se eu quiser uma versão mais antiga?
343
Estou tentando instalar uma versão específica de um pacote usando o Composer. Eu tentei composer install
e composer require
eles estão instalando a versão mais recente do pacote. E se eu quiser uma versão mais antiga?
Respostas:
composer require vendor/package:version
por exemplo:
composer require refinery29/test-util:0.10.2
fonte
Adicione aspas duplas para usar o operador de sinal de intercalação no número da versão.
fonte
basta usar o php composer.phar exigir
Por exemplo :
Também disponível com instalação.
https://getcomposer.org/doc/03-cli.md#require https://getcomposer.org/doc/03-cli.md#install
fonte
install
- somente comrequire
. Se você esperava mudar para uma versão específica e fazer check-in de seucomposer.lock
arquivo, pode, mas precisaria usá-locomposer require
e reverter a alteraçãocomposer.json
posteriormente.Como @alucic mencionado, use:
ou você pode usar:
Você provavelmente deve revisar esta postagem do StackOverflow sobre as diferenças entre a instalação e a atualização do compositor .
Relacionado à pergunta sobre números de versão, você pode revisar a documentação do Composer nas versões , mas aqui em resumo:
Portanto, com o Tilde, você receberá atualizações automáticas de patches, mas as versões menor e maior não serão atualizadas. No entanto, se você usar o Caret , obterá patches e versões secundárias, mas não obterá versões principais (que quebram alterações).
A Tilde Version é considerada uma abordagem "mais segura", mas se você estiver usando dependências confiáveis (bibliotecas bem mantidas), não deverá ter problemas com a Caret Version (porque pequenas alterações não devem interromper as alterações.
fonte
Suponha que você queira instalar o Laravel Collective. Atualmente, está na versão 6.x, mas você deseja a versão 5.8. Você pode executar o seguinte comando:
Um bom exemplo é mostrado aqui na documentação: https://laravelcollective.com/docs/5.5/html
fonte
No seu
composer.json
, você pode colocar:Em seguida, execute
composer install
oucomposer update
no diretório que contémcomposer.json
. Às vezes, para mim, o compositor é hinky, então eu vou começarcomposer clear-cache; rm -rf vendor; rm composer.lock
antescomposer install
para ter certeza de que está recebendo coisas novas.Obviamente, como as outras respostas apontam, você pode executar o seguinte no terminal:
E no versionamento:
- Artigo das versões oficiais do compositor
- Ecosia Search
fonte