Migrer de npm

, Author

Migrer de npm devrait être un processus assez facile pour la plupart des utilisateurs. Yarn peutconsumer le même format package.json que npm, et peut installer n’importe quel paquet du registre npm.

Si vous voulez essayer Yarn sur votre projet npm existant, essayez simplement d’exécuter :

yarn

Cela disposera votre dossier node_modules en utilisant l’algorithme de résolution de Yarnqui est compatible avec thenode.js module resolution algorithm.

Si vous obtenez une erreur, veuillez vérifier si un problème existe ou le signaler auYarn issue tracker.

Lorsque vous exécutez yarn ou yarn add <package>, Yarn génère un fichier yarn.lock dans le répertoire racine de votre paquet. Vous n’avez pas besoin de lire ou de comprendre ce fichier – il suffit de l’enregistrer dans le contrôle de la source. Lorsque d’autres personnes commenceront à utiliser Yarn au lieu de npm, le fichier yarn.lock s’assurera qu’ils obtiennent précisément les mêmes dépendances que vous.

Dans la plupart des cas, l’exécution de yarn ou yarn add pour la première fois fonctionnera simplement. Dans certains cas, les informations d’un fichier package.json ne sont pas assez explicites pour éliminer les dépendances, et la façon déterministe dont Yarn choisit les dépendances se heurtera à des conflits de dépendances. Cela est particulièrement susceptible de se produire dans les grands projets où parfois npm install ne fonctionne pas et où les développeurs suppriment fréquemment node_modules et reconstruisent à partir de zéro. Si cela se produit, essayez d’utiliser npm pour rendre les versions des dépendances plus explicites, avant de convertir à Yarn.

A partir de Yarn 1.7.0, vous pouvez importer votre état package-lock.json, généré par npm à Yarn, en utilisant yarn import.

Les autres développeurs du projet peuvent continuer à utiliser npm, donc vous n’avez pas besoin de faire convertir tout le monde sur votre projet en même temps. Les développeurs utilisant yarn obtiendront tous exactement la même configuration les uns que les autres, et les développeurs utilisant npm peuvent obtenir des configurations légèrement différentes, ce qui est le comportement prévu de npm.

Plus tard, si vous décidez que Yarn n’est pas pour vous, vous pouvez simplement revenir à l’utilisation de npm sans faire de changements particuliers. Vous pouvez supprimer votre ancien fichier yarn.lock si personne sur le projet n’utilise plus Yarn mais ce n’est pas nécessaire.

Si vous utilisez un fichier npm-shrinkwrap.json en ce moment, sachez que vous pouvez vous retrouver avec un ensemble différent de dépendances. Yarn ne prend pas en charge les fichiers npmshrinkwrap car ils ne contiennent pas suffisamment d’informations pour alimenter l’algorithme déterministe smore de Yarn. Si vous utilisez un fichier shrinkwrap, il peut être plus facile de convertir tous ceux qui travaillent sur le projet pour utiliser Yarn en même temps. Retirez simplement votre fichier npm-shrinkwrap.json existant et enregistrez le fichier yarn.lock nouvellement créé.

CLI comparaison des commandes

.

.

npm (v5) Yarn
npm install yarn add
(N/A) yarn add --flat
(N/A) yarn add --har
npm install --no-package-lock yarn add --no-lockfile
(N/A) yarn add --pure-lockfile
npm install --save yarn add
npm install --save-dev yarn add --dev
(N/A) yarn add --peer
npm install --save-optional yarn add --optional
npm install --save-exact yarn add --exact
(N/A) yarn add --tilde
npm install --global yarn global add
npm update --global yarn global upgrade
npm rebuild yarn add --force
npm uninstall yarn remove
npm cache clean yarn cache clean
rm -rf node_modules && npm install yarn upgrade
npm version major yarn version --major
npm version minor yarn version --minor
npm version patch yarn version --patch

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.