Je suis d'accord avec ivoszz que c'est parfois utile pour vérifier le dossier node_modules, mais ...
scénario 1 :
Un scénario : Vous utilisez un paquet qui a été supprimé de npm. Si vous avez tous les modules dans le dossier node_modules, alors ce ne sera pas un problème pour vous. Si vous n'avez que le nom du paquet dans le package.json, vous ne pouvez plus l'obtenir. Si un paquet a moins de 24 heures, vous pouvez facilement le supprimer de npm. S'il a plus de 24 heures, vous devez les contacter. Mais :
Si vous contactez le service d'assistance, il vérifiera si la suppression de cette version de votre paquet n'interrompt pas d'autres installations. Si c'est le cas, nous ne la supprimerons pas.
en savoir plus
Donc les chances pour cela sont faibles, mais il y a le scénario 2...
scénario 2 :
Un autre scénario où c'est le cas : Vous développez une version entreprise de votre logiciel ou un logiciel très important et écrivez dans votre package.json :
"dependencies": {
"studpid-package": "~1.0.1"
}
Vous utilisez la méthode function1(x)
de ce paquet.
Maintenant les développeurs de studpid-package ont renommé la méthode function1(x)
à function2(x)
et ils font une faute... Ils changent la version de leur paquet de 1.0.1
à 1.1.0
. C'est un problème parce que lorsque vous appelez npm install
la prochaine fois, vous accepterez la version 1.1.0
parce que vous avez utilisé le tilde ( "studpid-package": "~1.0.1"
).
Appel à function1(x)
peut causer des erreurs et des problèmes maintenant.
Mais :
Pousser l'ensemble du dossier node_modules (souvent plus de 100 Mo) vers votre dépôt, vous coûtera de l'espace mémoire. Quelques kb (package.json uniquement) par rapport à des centaines de MB (package.json & node_modules)... Pensez-y.
Vous pourrait le faire / devrait y penser si :
-
le logiciel est très important.
-
ça vous coûte de l'argent quand quelque chose échoue.
-
vous ne faites pas confiance au registre de npm. npm est centralisé et pourrait théoriquement être fermé.
Vous n'ont pas besoin pour publier le dossier node_modules dans 99,9% des cas si :
Si vous ne voulez pas que les node_modules se trouvent dans votre dépôt, créez simplement un fichier .gitignore
et ajoutez la ligne node_modules
.
5 votes
En rapport : Dois-je enregistrer node_modules dans git lorsque je crée une application node.js sur Heroku ?