Mac에서 설정을 유지하며 VS Code 캐시 정리하기
VS Code가 공간을 많이 차지하거나 계속 오작동해도 전체 초기화가 필요한 것은 아닙니다. Mac의 Code 폴더에는 다시 만들 수 있는 캐시와 설정, 작업 영역 상태, 확장 데이터가 함께 있으므로 폴더 전체 삭제는 캐시 정리보다 영향이 훨씬 큽니다. 먼저 창을 다시 로드하거나 확장을 점검한 뒤, 확인한 캐시만 정리하세요.
Code 폴더의 데이터 구분하기
Microsoft 표준 배포판의 사용자 데이터는 ~/Library/Application Support/Code에 있습니다. 기본 프로필의 설정과 상태는 User 아래에 있고, 설치한 확장은 보통 별도 위치인 ~/.vscode/extensions에 있습니다. 사용자 지정 실행 옵션으로 위치가 바뀔 수 있습니다. Microsoft의 설정 문서는 설정 파일의 위치를, 환경 구현은 작업 영역 저장소와 로그, 내려받은 확장 패키지의 구분을 보여 줍니다.
아래 첫 번째 열은 마지막 행을 제외하면 ~/Library/Application Support/Code 기준의 상대 경로입니다.
| 위치 | 내용 | 판단 |
|---|---|---|
Cache, Code Cache, GPUCache |
Chromium 리소스, 컴파일된 코드, 그래픽 캐시 | 재생성 가능, 앱 종료 후 정리 |
CachedData |
빌드별 VS Code 시작 코드 캐시 | 재생성 가능, 다음 시작이 느려질 수 있음 |
CachedExtensionVSIXs |
내려받은 확장 설치 패키지 | 제거 가능, 다음 설치나 업데이트 때 다시 다운로드할 수 있음 |
User/workspaceStorage |
작업 영역별 편집기 및 확장 상태 | 기본적으로 보관, 항목별 확인 |
User/globalStorage |
지속적으로 보관되는 편집기 및 확장 데이터, 로그인 관련 상태가 포함될 수 있음 | 보관, 일반 캐시가 아님 |
logs |
이전 세션의 진단 기록 | 문제 조사 후 오래된 세션만 제거 |
User |
설정, 키 바인딩, 코드 조각, 프로필 및 기타 상태 | 로컬 기록을 포함해 보관 |
~/.vscode/extensions |
설치된 확장 | 보관, 편집기에서 관리 |
Electron의 사용자 데이터 설명은 Chromium 캐시가 쿠키와 로컬 저장소 옆에 놓인다고 설명합니다. 비슷한 이름의 이웃 폴더까지 지워도 된다는 뜻은 아닙니다. 이는 구현 세부 사항이며 모든 버전이 모든 폴더를 만든다는 보장은 아닙니다.
VS Code 자체 기능부터 사용하기
파일을 저장하고 Shift + Command + P로 명령 팔레트를 연 다음 Developer: Reload Window를 실행합니다. 창을 다시 로드하는 기능이지 디스크 캐시 삭제 기능은 아닙니다. 화면이 갱신되지 않을 때 먼저 시도할 만한 작은 조치입니다. 구현도 창 다시 로드 작업을 호출합니다.
확장을 변경한 뒤 문제가 시작됐다면 저장소를 지우기보다 해당 확장을 비활성화해 보세요. Microsoft의 성능 문제 해결 문서에 나오는 Help: Start Extension Bisect는 확장을 그룹별로 비활성화하고 문제가 계속되는지 묻습니다. 원인이 특정 확장이라면 그 확장의 공식 초기화나 재구축 방법을 따릅니다. 확장이 임의로 저장하는 모든 데이터를 안전하게 초기화하는 공통 캐시 명령은 없습니다.
옮기기 전에 용량 측정하기
Finder에서 Shift + Command + G를 누르고 ~/Library/Application Support/Code를 입력합니다. 상위 폴더 전체를 확보 가능한 공간으로 보지 말고 하위 폴더 크기를 확인하세요. 터미널에서는 다음 읽기 전용 명령으로 측정할 수 있습니다.
du -sh "$HOME/Library/Application Support/Code"/*
du -sh "$HOME/Library/Application Support/Code/User"/* "$HOME/.vscode/extensions"
첫 줄은 최상위 캐시와 User를 구분하고, 둘째 줄은 작업 영역이나 전역 저장소가 대부분을 차지하는지 보여 줍니다. 상위 폴더와 하위 폴더 크기를 더하면 중복입니다. 경로가 없다는 메시지는 해당 폴더가 없다는 뜻이고, 권한 오류는 측정이 불완전하다는 뜻입니다.
이 경로는 표준 안정 버전 기준입니다. --user-data-dir 또는 --extensions-dir로 실행했다면 지정한 위치를 확인하세요. Microsoft의 명령줄 참조에 두 옵션이 설명되어 있습니다. 원격 개발 환경은 별도로 조사해야 하며 이 로컬 폴더에 데이터가 있다고 가정하면 안 됩니다.
재생성 가능한 부분만 정리하기
- 작업을 저장하고 통합 터미널의 작업을 마친 뒤 Command + Q로 VS Code를 완전히 종료합니다. 창 하나를 닫는 것과 앱 종료는 다릅니다.
- 상태 데이터를 실험하기 전에는
User를 백업하고, 확장이 다시 만들 수 없는 데이터도 별도로 보관합니다. 프로젝트와 프로젝트의.vscode설정은 그대로 둡니다. - Finder에서
Code를 열고 확인한Cache,Code Cache,GPUCache또는CachedData만 휴지통으로 옮깁니다. 주변 폴더를 한꺼번에 지우지 말고 관련된 하나부터 처리한 후 확인합니다. - 다운로드가 공간을 차지하면
CachedExtensionVSIXs를 따로 검토합니다. 설치된 확장이 아니라 설치 압축 파일입니다. 다시 구할 수 없는 오프라인 설치 파일은 먼저 다른 곳에 보관합니다. 확장 다운로더는 기존 패키지를 재사용하고 없으면 다운로드합니다. - 조사 자료가 더 이상 필요 없으면
logs의 오래된 세션을 정리할 수 있습니다. 새 로그는 기록되지만 삭제한 진단 기록은 재생성되지 않습니다.
같은 프로젝트를 다시 열어 원래 문제를 확인한 뒤 휴지통을 비울지 결정합니다. 리소스를 다시 사용하면 캐시가 돌아오고 첫 시작이 느려질 수 있습니다. 정상적인 재생성이므로 이것만으로 정리 실패라고 볼 수 없습니다.
작업 영역 저장소는 상태로 다루기
User/workspaceStorage의 폴더는 작업 영역 ID별로 나뉩니다. Microsoft의 작업 영역 저장소 구현은 state.vscdb와 workspace.json을 기록하고, 확장도 작업 영역별 파일을 저장할 수 있습니다. 큰 항목에는 단순 색인뿐 아니라 확장의 대화 같은 유용한 로컬 상태가 들어 있을 수 있습니다.
항목의 workspace.json을 읽어 연결된 폴더나 작업 영역을 확인합니다. 프로젝트가 삭제되거나 옮겨져도 항목이 남을 수 있지만, 폴더가 없는 이유가 연결되지 않은 드라이브일 수도 있습니다. 상황을 확인하고 해당 항목을 백업한 다음 VS Code를 종료한 후 그 항목만 제거할지 판단합니다. 프로젝트 파일은 별개지만 잃은 작업 영역이나 확장 상태는 프로젝트를 다시 여는 것만으로 복구되지 않습니다. 원격 항목이나 알아볼 수 없는 항목은 남겨 둡니다.
User/globalStorage는 보관합니다. 초기화하면 확장의 영구 데이터가 사라지거나 다시 로그인해야 할 수 있으며, 영향은 확장과 VS Code 버전에 따라 다릅니다. settings.json만 보관해서는 이 상태를 모두 지킬 수 없습니다.
공간과 남은 문제 확인하기
프로젝트를 다시 열어 사용한 뒤 같은 명령으로 측정합니다. 휴지통의 파일도 제거할 때까지 디스크를 쓰므로 Code가 작아졌다고 여유 공간이 곧바로 늘지는 않습니다. 설정과 확장, 원래 증상을 확인할 때까지 복구할 수 있게 둡니다.
문제가 계속되면 아직 사용하지 않은 새 디렉터리로 격리된 인스턴스를 실행해 볼 수 있습니다.
code --user-data-dir "$HOME/vscode-cache-test-data" --extensions-dir "$HOME/vscode-cache-test-extensions"
일반 설정을 초기화하지 않고 테스트 데이터를 만듭니다. code를 찾지 못하면 명령줄 참조에 연결된 macOS 설정 안내를 따릅니다. 첫 비교 전에는 Settings Sync를 켜거나 확장을 설치하지 않습니다. 깨끗한 인스턴스가 정상이면 기존 프로필이나 확장과 차이가 있다는 단서이지 캐시 손상의 증거는 아닙니다. 정리 후 로그인이 사라졌다면 삭제를 멈추고 어떤 상태 폴더를 옮겼는지 확인한 다음, 필요한 경우 VS Code를 종료하고 백업을 복원합니다.
Mole이 다루는 범위
Mole Mac의 정리는 CachedData, Code Cache, GPUCache와 존재하는 WebStorage/<id>/CacheStorage 하위 폴더를 표시하며 처리 가능한 항목은 기본 선택됩니다. Application Support 항목에는 전체 디스크 접근 권한이 필요하고, VS Code 실행 중에는 관련 항목을 정리할 수 없습니다. 로컬 대상 폴더가 없어진 User/workspaceStorage 항목은 검토용이며 기본 선택되지 않습니다. 이 유형을 다시 정리하지 않기를 선택하면 앞으로 일치하는 항목까지 해당 VS Code 규칙에서 제외합니다. 이 항목들은 설정, 전역 저장소, 사용 중인 확장을 정리 대상으로 삼지 않습니다. 캐시 삭제 방식의 기본값은 영구 삭제이며 작업 영역 항목에도 항상 휴지통으로 보내는 예외는 없습니다. 복구 가능하게 하려면 캐시 삭제 방식에서 휴지통으로 이동을 선택합니다. VS Code 테스트 앱 안내는 별도의 제거 목록을 다룹니다.
편집기를 제거하려면 Mac에서 VS Code 제거하기를, 패키지 관리자나 프로젝트 빌드 캐시는 개발 캐시 안내를 참고하세요.
자주 묻는 질문
설정이나 확장도 삭제되나요?
위의 좁은 범위의 캐시 정리는 User와 ~/.vscode/extensions를 남깁니다. Code 폴더 전체 삭제는 사용자 데이터 초기화이며 다른 작업입니다. Microsoft의 제거 문서에서도 이를 설명합니다.
캐시가 다시 커지는 이유는 무엇인가요?
VS Code를 사용하면 코드와 그래픽 캐시가 재생성됩니다. 나중에 확장을 설치하거나 업데이트할 때 없는 설치 패키지를 다시 내려받을 수도 있습니다. 과도한 데이터를 계속 만드는 확장 문제는 반복 삭제로 해결되지 않습니다.
작업 영역 저장소를 전부 삭제해도 되나요?
저장된 모든 작업 영역의 로컬 상태가 사라집니다. 항목별로 확인하고 백업을 남기세요. 실행할 때 폴더가 다시 생겨도 이전 내용이 복구된 것은 아닙니다.