node_modules를 지워도 되나요?

개발 폴더 · 2026-09-07 확인

지워도 됩니다. 인터넷에서 받아둔 부품 폴더라, 그 폴더를 다시 열고 설치 명령을 돌리면 그대로 돌아옵니다(보통 1~3분). 다만 프로젝트 단위로 통째로 지우세요 — 안에서 파일 몇 개만 빼면 용량은 조금 줄고 프로젝트는 통째로 지운 것처럼 안 돌아갑니다.

왜 이렇게 큰가요

프로젝트가 쓰는 부품, 그 부품이 쓰는 부품이 재귀적으로 쌓입니다. 프로젝트 하나에 수백 MB에서 몇 GB까지 갑니다.

프로젝트가 열 개면 같은 부품이 열 벌 들어 있는 경우도 흔합니다. 개발 PC에서 개발 폴더가 수십 GB가 되는 주된 이유입니다.

어느 프로젝트부터 지우나

기준은 "부품 폴더가 언제 만들어졌나"가 아니라 "직접 만든 소스 파일을 언제 마지막으로 고쳤나"입니다. node_modules 안 파일의 날짜는 작업한 날이 아니라 설치한 날이라, 신호로 못 씁니다.

소스를 몇 달째 안 고친 프로젝트부터 지우면 됩니다. 다시 필요해지면 npm install 한 번입니다.

한 번에 여러 개 지우기

PowerShell에서 특정 폴더 아래의 node_modules를 모두 찾으려면:

Get-ChildItem -Path . -Filter node_modules -Recurse -Directory -Depth 3 | Select-Object FullName, @{n="GB";e={"{0:N1}" -f ((Get-ChildItem $_.FullName -Recurse -File -EA 0 | Measure-Object Length -Sum).Sum/1GB)}}

먼저 목록만 보고, 지울 것을 고른 다음에 지우세요. -Recurse -Force로 한꺼번에 지우는 명령을 확인 없이 돌리지 마세요.

지우기 전에 확인할 것

package.json이 있는지 봅니다. 있으면 그게 부품 목록이라 언제든 복원됩니다.

package-lock.json이나 yarn.lock, pnpm-lock.yaml도 남겨두세요. 이 파일이 있어야 다음 설치에서 같은 버전이 들어옵니다. 없으면 최신 버전이 들어와서 안 돌아가는 경우가 생깁니다.

드물게 node_modules 안의 파일을 직접 고쳐 쓰는 프로젝트가 있습니다. 그런 경우 지우면 그 수정이 날아가고, 버전 관리에도 안 잡혀서 확인이 어렵습니다.

앞으로 덜 쌓이게 하려면

npm은 프로젝트마다 부품을 따로 복사합니다. 프로젝트 열 개면 같은 부품이 열 벌입니다.

pnpm은 한 곳에 저장하고 각 프로젝트에서는 링크만 겁니다. 프로젝트가 많을수록 차이가 커집니다.

이미 쌓인 걸 정리한 다음에, 앞으로를 위해 바꿔볼 만합니다.

자주 묻는 것

지우면 프로젝트가 망가지나요?

아니요. 소스 코드는 그대로입니다. 다시 설치하면 됩니다.

package-lock.json도 지워야 하나요?

아니요. 그 파일이 있어야 다음 설치에서 같은 버전이 들어옵니다. 남겨두세요.

이걸 직접 찾아드립니다

테라클린은 이 글에 나온 것들을 실제로 재서, 지워도 되는 것만 이유와 함께 보여줍니다. 파일은 기기를 떠나지 않고, 무료입니다.

무료로 받기

같이 보면 좋은 글