Il nodo aggiorna un pacchetto specifico


187

Voglio aggiornare la sincronizzazione del mio browser senza aggiornare tutti i pacchetti dei miei nodi . Come posso raggiungere questo obiettivo? La mia versione corrente di Sincronizzazione browser non ha la GUI di sincronizzazione browser :(

├─┬ browser-sync@1.9.2
 ├── browser-sync-client@1.0.2

5
npm install browser-sync@latestpuò essere. dovrebbe
sovrascriverlo

Risposte:


290

La maggior parte delle volte puoi semplicemente aggiornare npm (o aggiornare il filato ) un modulo per ottenere le ultime modifiche non interruttive (rispettando il semver specificato in package.json) (<- leggi di nuovo l'ultima parte).

npm update browser-sync
-------
yarn upgrade browser-sync
  • Utilizzare npm|yarn outdatedper vedere quali moduli hanno versioni più recenti
  • Utilizzare npm update|yarn upgrade(senza un nome pacchetto) per aggiornare tutti i moduli
  • Includi --save-dev|--devse desideri salvare i numeri di versione più recenti su package.json. (NOTA: a partire da npm v5.0 questo è necessario solo per devDependencies).

Aggiornamenti della versione principale:

Nel tuo caso, sembra che tu voglia la prossima versione principale (v2.xx), che probabilmente avrà delle modifiche di rottura e dovrai aggiornare l'app per adattarle. Puoi installare / salvare gli ultimi 2.x.xfacendo:

npm install browser-sync@2 --save-dev
-------
yarn add browser-sync@2 --dev

... o l'ultimo 2.1.xfacendo:

npm install browser-sync@2.1 --save-dev
-------
yarn add browser-sync@2.1 --dev

... o l' ultimo e il più grande facendo:

npm install browser-sync@latest --save-dev
-------
yarn add browser-sync@latest --dev

Nota: l'ultimo non è diverso dal fare questo:

npm uninstall browser-sync --save-dev
npm install browser-sync --save-dev
-------
yarn remove browser-sync --dev
yarn add browser-sync --dev

La --save-devparte è importante Questo lo disinstallerà, rimuoverà il valore da package.json, quindi reinstallerà la versione più recente e salverà il nuovo valore su package.json.


1
npm update browser-sync --save-devfunzionerebbe anche per aggiornare alla versione principale e salvare il pacchetto-lock.json (se esiste, ovviamente).
Wildhoney,

5
@Wildhoney - Sono rispettosamente in disaccordo con te (principalmente) - npm updateinstallerò l'ultimo rispettivo di semver . L'unico modo per aggiornare alla prossima versione principale è farlo esplicitamente come descrivo sopra. Se non hai mai installato un pacchetto e provi ad aggiornarlo / salvarlo, installerà la versione più recente, ma non è molto comune. C'è anche il semver usato raramente per specificare l' ultima versione principale - sarebbe simile a questo nel tuo package.json: browser-sync: '*'OPPURE browser-sync: 'x'- ma NON raccomando di farlo.
Ryan Wheale,

1
@RyanWheale, nota che poiché npm@5.0.0 --save-devnon è necessario, poiché verrà salvato automaticamente in package.json ( docs.npmjs.com/cli/update )
lakesare

@lakesare attualmente da npm@5.0.0 il valore predefinito è --save, non --save-dev. È ancora necessario specificare --save-dev se si desidera creare una dipendenza solo sviluppatore.
Joshua Harris,

2
npm install some-package @ latest --save-dev ha funzionato per me. Grazie.
ashilon,

3

Utilizzare npm outdated per visualizzare la versione corrente e più recente di tutti i pacchetti.


Quindi npm i packageName@versionNumberper installare una versione specifica: esempio npm i browser-sync@2.1.0 .

O npm i packageName@latestper installare l'ultima versione: esempio npm i browser-sync@latest .


-2

Puoi sempre farlo manualmente. Questi sono i passaggi:

  • Vai alla pagina del pacchetto NPM e cerca il link GitHub.
  • Ora scarica l'ultima versione usando il link per il download di GitHub o clonando. git clone github_url
  • Copia il pacchetto nella node_modulescartella per esnode_modules/browser-sync

Ora dovrebbe funzionare per te. Per essere sicuro che non si romperà in futuro quando lo fai npm i, continua i prossimi due passaggi:

  • Controlla la versione del nuovo pacchetto leggendo il package.jsonfile nella sua cartella.
  • Apri il tuo progetto package.jsone imposta la stessa versione per dove appare nella dependenciesparte del tuopackage.json

Anche se non è consigliabile farlo manualmente. A volte è bene capire come funzionano le cose sotto il cofano, per essere in grado di sistemare le cose. Mi ritrovavo a farlo di tanto in tanto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.