Załóżmy, że instaluję pakiety projektów, npm install
które sprawdzają package.json
moduły do zainstalowania. Po chwili widzę, że nie potrzebuję jakiegoś konkretnego modułu i usuwam jego zależność package.json
. Następnie usuwam niektóre inne moduły, package.json
ponieważ nie są już potrzebne, a inne są zastępowane alternatywnymi.
Teraz chcę wyczyścić node_modules
folder, aby pozostały tylko wymienione moduły, package.json
a reszta musiała przejść, coś w rodzaju npm clean
. Wiem, że mogę je usunąć ręcznie, ale chciałbym mieć jakąś przyjemną gotową do użycia funkcję cukru.
node_modules
folderze głównym , a nie jak poprzednio, gdzie każda zależność miała swoje własne zależności instalowane w swoichnode_modules
folderach .. z niezliczonymi kopiami tych samych zależności ... więcnpm prune
bierze to pod uwagę? ponieważ te głębokie zależności nie są zapisane w głównympackage.json
projekcie. śliwka musi wyglądać rekurencyjnie.npm dedupe
docs.npmjs.com/cli/dedupe . Próbuje uprościć drzewo węzłów, przenosząc zależności w górę drzewa.Możesz usunąć folder node_modules /, a następnie ponownie zainstalować zależności z pliku package.json.
Spowodowałoby to usunięcie wszystkich zainstalowanych pakietów w bieżącym folderze i zainstalowanie tylko zależności z pliku package.json. Jeśli zależności zostały wcześniej zainstalowane, npm spróbuje użyć wersji z pamięci podręcznej, unikając ponownego pobierania zależności.
źródło
rmdir node_modules /s /q
w systemie Windows. superuser.com/a/179661/440976prune
opcja wymaga w ogóle posiadania połączenia z Internetem.źródło
rm -rf node_modules
rm -rf node_modules
nie będzie działać w systemie Windows. Zobacz to rozwiązanie: superuser.com/a/179661/440976po prostu biegnij
w ten sposób możesz usunąć dowolny folder.
jak rm -r AnyFolderWhichIsNotDeletableFromShiftDeleteOrDelete .
po prostu otwórz gitbash przenieś do katalogu głównego folderu i uruchom to polecenie
Mam nadzieję, że to pomoże.
źródło
Najpierw zainstaluj globalnie rimraf
przejdź do ścieżki za pomocą cmd, gdzie jest twój folder node_modules i zastosuj poniższe polecenie
źródło
npm prune
jest idealnym rozwiązaniem.Próbowałeś np. Śliwek?
powinien odinstalować wszystko, czego nie ma w pliku pakietu
https://npmjs.org/doc/cli/npm-prune.html
źródło
od wersji 6.5.0 npm obsługuje polecenie
clean-install
twardego odświeżania wszystkich pakietówźródło
Dodałem kilka wierszy w pliku package.json:
Jeśli chcesz
clean
tylko możesz użyć tegorimraf node_modules
lubrm -rf node_modules
.To działa dobrze
źródło
W przypadku użytkownika systemu Windows alternatywne rozwiązanie umożliwiające usunięcie takiego folderu wymienionego tutaj: http://ask.osify.com/qa/567
Wśród nich warto wypróbować bezpłatne narzędzie: Long Path Fixer : http://corz.org/windows/software/accessories/Long-Path-Fixer-for-Windows.php
źródło
Najlepszy artykuł, jaki o nim znalazłem, to ten: https://trilon.io/blog/how-to-delete-all-nodemodules-recursively
Wszystko z konsoli i łatwe do uruchomienia z dowolnego punktu folderu.
Ale jako podsumowanie artykułu, to polecenie, aby znaleźć rozmiar każdego
node_module
folderu znalezionego w różnych projektach.I aby je faktycznie usunąć:
Artykuł zawiera także instrukcje dotyczące powłoki systemu Windows.
źródło
Usuń / Edytuj pakiety, które nie są potrzebne w package-lock.json (nazwy pakietów zostaną zapisane w zależności i devDependencies), a następnie
npm install
źródło
Użyj następującego polecenia zamiast instalacji npm
źródło