{"id":232291,"date":"2023-01-07T19:11:00","date_gmt":"2023-01-07T16:11:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=232291"},"modified":"2022-11-10T08:31:54","modified_gmt":"2022-11-10T05:31:54","slug":"come-eseguire-il-downgrade-di-composer-php-e-npm","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/it\/come-eseguire-il-downgrade-di-composer-php-e-npm\/","title":{"rendered":"Come eseguire il downgrade di Composer, PHP e NPM"},"content":{"rendered":"\n<p><strong>TL; DR:<\/strong> Se stai lavorando su una variet\u00e0 di progetti, ognuno dei quali richiede versioni diverse di PHP, Composer e\/o NPM, potresti dover modificare la versione di tutte o di qualsiasi permutazione di una qualsiasi di queste utilit\u00e0.<\/p>\n<p>Questo articolo illustra quali passaggi devono essere eseguiti per eseguire il downgrade di Composer, PHP o NPM quando si lavora su un determinato progetto.<\/p>\n<h2>Eseguire il downgrade di Composer, PHP e NPM<\/h2>\n<h3>Downgrade di Composer 2 a Composer 1<\/h3>\n<p>Negli ultimi due mesi ho usato Composer 2 senza problemi; tuttavia, ho appena avuto la necessit\u00e0 di eseguire il downgrade di Composer per un progetto in corso.<\/p>\n<p>Per fare ci\u00f2, emettere il seguente comando nel terminale:<\/p>\n<p><code>$ sudo composer self-update --1<\/code><\/p>\n<p>Di solito, questo funzioner\u00e0. Se \u00e8 passato un po&#8217; di tempo dall&#8217;ultima volta che hai fatto qualcosa del genere, potresti dover aggiornare le tue chiavi.<\/p>\n<h4>Verifica chiavi<\/h4>\n<p>I comandi del terminale per l&#8217;aggiornamento sono abbastanza facili in termini di guida su come farlo, ma avere il seguente URL sar\u00e0 utile.<\/p>\n<p>Per prima cosa, prendi <a href=\"https:\/\/composer.github.io\/pubkeys.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">questo URL<\/a>: <code>https:\/\/composer.github.io\/pubkeys.html<\/code>.<\/p>\n<p>Quindi emettere il seguente comando:<\/p>\n<p><code>$ composer self-update --update-keys<\/code><\/p>\n<p>Da l\u00ec, il terminale ti chieder\u00e0 quale chiave devi inserire. Una volta terminato, dovresti essere in grado di completare il processo di downgrade.<\/p>\n<h3>Esegui il downgrade di PHP<\/h3>\n<p>Uso Homebrew per gestire le varie installazioni di PHP che ho. Ho lavorato a un progetto che utilizzava PHP8 ma avevo bisogno di eseguirne il downgrade.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-158345-61e6dc9a84352.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-158345-61e6dc9a84352.png\" alt=\"Come eseguire il downgrade di Composer, PHP e NPM\" ><\/a><\/p>\n<p>Supponendo che tu abbia gi\u00e0 il pacchetto esistente per la versione di PHP che desideri utilizzare, puoi utilizzare una delle versioni precedenti installate.<\/p>\n<p>Ad esempio, ho PHP 7.3.26 installato <code>\/usr\/local\/Cellar\/php@7.3<\/code>sul mio computer locale. Per vedere quali versioni hai installato, faccio qualcosa del genere:<\/p>\n<p><code>$ ls \/usr\/local\/Cellar\/php*<\/code><\/p>\n<p>E lo schema restituir\u00e0 le directory delle versioni di PHP che ho installato. Al momento in cui scrivo, ho:<\/p>\n<ul>\n<li><code>\/usr\/local\/Cellar\/php<\/code>che \u00e8<code>8.0.3<\/code><\/li>\n<li><code>\/usr\/local\/Cellar\/php@7.3<\/code>che \u00e8<code>7.3.27<\/code><\/li>\n<\/ul>\n<p>Per utilizzare la versione precedente, devo prima scollegare la versione corrente di PHP:<\/p>\n<p><code>$ brew unlink php<\/code><\/p>\n<p>E quindi crea un collegamento alla versione precedente:<\/p>\n<p><code>$ brew link php@7.3 --force --overwrite<\/code><\/p>\n<p>Ed \u00e8 importante utilizzare il nome della directory (come il <code>php@7.3<\/code>terminale restituito sopra).<\/p>\n<p>Per verificare che funzioni, dovresti essere in grado di eseguire <code>$ php -v<\/code>e vedere la versione attualmente in esecuzione.<\/p>\n<h3>Declassare NPM<\/h3>\n<p>Simile ai due elementi precedenti sopra, ho dovuto eseguire il downgrade di un pacchetto che veniva fornito come informazioni durante l&#8217;esecuzione <code>npm i<\/code>nel terminale.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-158345-61e6dc9f35d3a.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-158345-61e6dc9f35d3a.png\" alt=\"Come eseguire il downgrade di Composer, PHP e NPM\" ><\/a><\/p>\n<p>Supponendo che l&#8217;avviso, l&#8217;errore o l&#8217;avviso mostri la versione di cui hai bisogno, quindi utilizzalo come guida per quale versione eseguire il downgrade.<\/p>\n<p>Innanzitutto, identifica la versione corrente eseguendo:<\/p>\n<p><code>$ npm -v<\/code><\/p>\n<p>Quindi, utilizzando le informazioni del messaggio nel terminale, eseguire il comando seguente:<\/p>\n<p><code>$ npm install -g npm@6.13.4<\/code><\/p>\n<p>Fatto ci\u00f2, ricontrolla la versione ancora una volta usando lo stesso comando di cui sopra e dovrebbe corrispondere a ci\u00f2 che hai appena installato.<\/p>\n<h2>Non tutto in una volta<\/h2>\n<p>Ovviamente, potrebbe non essere necessario cambiarli tutti contemporaneamente, ma uno alla volta. E non \u00e8 insolito. Questo post \u00e8 il risultato del mio lavoro su qualcosa dal front-end al back-end che richiedeva l&#8217;aggiornamento dell&#8217;intero ambiente.<\/p>\n<p>In definitiva, esegui l&#8217;upgrade o il downgrade solo di ci\u00f2 di cui hai bisogno. Uno non richiede la necessit\u00e0 di aggiornare gli altri.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Questo articolo illustra quali passaggi devono essere eseguiti per eseguire il downgrade di Composer, PHP o NPM quando si lavora su un determinato progetto.<\/p>\n","protected":false},"author":1,"featured_media":158346,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[896,751,783,720],"tags":[1168],"class_list":["post-232291","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codice","category-open-source-projektmanagement-3","category-software-open-source","category-sviluppatore","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/232291","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/comments?post=232291"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/232291\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media\/158346"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media?parent=232291"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/categories?post=232291"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/tags?post=232291"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}