개발/Visual Studio Code

VS Code Profiles 3부: 설정·확장 문제를 안전하게 해결하는 방법

반응형
VS Code 초보자 시리즈 · Profiles 3부

올바른 Profile로 자동 실행하고
설정·확장 문제 해결하기

명령줄 실행, Temporary Profile, 확장 비활성화와 Extension Bisect로 문제 원인을 안전하게 좁혀 갑니다.

VS Code 화면이 갑자기 달라지거나 익숙한 기능이 동작하지 않을 때 바로 재설치할 필요는 없습니다. 먼저 잘못된 Profile로 열린 것인지, 사용자 설정 때문인지, 확장 기능 때문인지 순서대로 분리하면 원인을 훨씬 빠르게 찾을 수 있습니다. 이번 글에서는 앞서 만든 Web Study와 vscode-profile-practice 프로젝트로 이 과정을 직접 연습합니다.

1. Profiles 시리즈 복습과 오늘의 목표

1부에서는 Web Study라는 학습용 Profile을 만들어 프로젝트와 연결했고, 2부에서는 .code-profile 파일 백업과 Settings Sync를 익혔습니다. 3부의 목표는 문제가 생겼을 때 환경 전체를 지우지 않고 원인을 좁혀 복구하는 것입니다.

상황먼저 확인할 대상오늘 사용할 방법
테마·글자 크기가 다름현재 Profile과 User 설정--profile, @modified
특정 기능이 이상함설정 또는 확장 기능Temporary Profile 비교
확장 기능 충돌 의심활성화된 확장 목록--disable-extensions, Extension Bisect
폴더가 계속 잘못 열림폴더·Profile 연결Profile 전환 또는 연결 초기화

VS Code 공식 문서는 Empty Profile을 사용하면 수정한 설정과 확장 기능의 영향을 제거해 문제가 VS Code 자체인지 사용자 구성 때문인지 확인할 수 있다고 설명합니다. Empty Profile 문제 진단 공식 안내

2. 문제 해결의 기본 순서

문제가 보이자마자 Profile을 삭제하거나 VS Code를 재설치하면 원인을 알 수 없고 정상 설정까지 잃을 수 있습니다. 아래 순서를 그대로 따르는 것이 안전합니다.

  1. 재현: 어떤 파일에서 어떤 동작이 이상한지 한 문장으로 적습니다.
  2. 현재 환경 확인: 제목 표시줄과 Manage 버튼에서 Profile 이름을 확인합니다.
  3. 깨끗한 환경 비교: Temporary Profile 또는 확장 비활성 실행에서 같은 문제가 생기는지 봅니다.
  4. 범위 축소: 설정 문제인지 확장 문제인지 나눕니다.
  5. 최소 복구: 원인이 된 설정 하나를 Reset하거나 확장 하나를 Disable합니다.
  6. 재검증: 원래 Profile로 프로젝트를 다시 열어 정상 여부를 확인합니다.
핵심 판단 깨끗한 환경에서는 정상이라면 VS Code 설치나 프로젝트 파일보다 기존 Profile의 설정·확장 기능을 먼저 의심합니다. 깨끗한 환경에서도 같은 문제가 반복되면 프로젝트 파일, 운영체제, VS Code 자체 문제까지 범위를 넓힙니다.

이번 글에서 사용하는 단축키

기능WindowsmacOS용도
명령 팔레트Ctrl + Shift + P⇧ + ⌘ + PProfile·진단 명령 검색
Settings 열기Ctrl + ,⌘ + ,수정 설정 확인·복구
Extensions 열기Ctrl + Shift + X⇧ + ⌘ + X확장 활성 상태 확인
통합 터미널Ctrl + `⌃ + `code 명령 실습
Output 열기Ctrl + Shift + U⇧ + ⌘ + U확장·VS Code 로그 확인

위 조합은 2026년 7월 27일 기준 VS Code 공식 기본 단축키 문서에서 확인했습니다. 기본 단축키 공식 문서

3. 연습용 문제 만들기

문제 해결 과정을 확실히 보기 위해 Web Study의 설정 두 개를 일부러 불편하게 바꿉니다. 실습이 끝나면 정상 값으로 되돌립니다.

  1. vscode-profile-practice 폴더를 열고 Web Study가 활성화됐는지 확인합니다.
  2. Settings를 열고 상단의 User 탭을 선택합니다.
  3. Editor: Font Size를 30으로 바꿉니다.
  4. Editor: Word Wrap을 off로 바꿉니다.
  5. index.html을 열어 글자가 지나치게 크고 긴 줄이 화면 밖으로 이어지는지 확인합니다.

현재 Profile의 사용자 설정은 다음과 비슷한 상태가 됩니다.

{
  "editor.fontSize": 30,
  "editor.wordWrap": "off",
  "files.autoSave": "afterDelay",
  "editor.minimap.enabled": false
}
문제 재현 성공 프로젝트 파일 내용은 그대로지만 편집 화면만 불편해졌습니다. 따라서 이번 문제는 코드가 아니라 VS Code 환경 설정에서 시작됐다는 단서를 얻었습니다.
Workspace 탭을 바꾸지 마세요 이번 실습은 Web Study Profile의 User 설정 문제를 재현합니다. Workspace 설정을 바꾸면 프로젝트에 저장되어 다른 Profile에서도 같은 값이 보일 수 있습니다.

4. code 명령 준비하기

VS Code의 명령줄 인터페이스를 사용하면 폴더와 Profile을 한 명령으로 정확하게 지정해 열 수 있습니다. 먼저 운영체제 터미널에서 code 명령이 준비됐는지 확인합니다.

1단계: 명령 인식 확인

code --version
code --help
정상 결과 VS Code 버전·커밋·아키텍처 또는 명령 옵션 목록이 표시됩니다.

2단계: macOS에서 command not found가 나올 때

  1. VS Code에서 명령 팔레트를 엽니다.
  2. Shell Command: Install 'code' command in PATH를 실행합니다.
  3. 사용 중인 Terminal을 완전히 닫았다가 다시 엽니다.
  4. code --version을 다시 실행합니다.

공식 CLI 문서는 macOS에서 먼저 위 Shell Command를 실행해 VS Code 실행 파일을 PATH에 추가하도록 안내합니다. Windows와 Linux 설치는 일반적으로 VS Code 바이너리 위치를 Path에 추가합니다. CLI 실행 준비 공식 문서

3단계: Insiders를 사용할 때

Stable의 명령은 code, Insiders의 명령은 code-insiders입니다. 두 빌드를 함께 사용한다면 지금 어느 쪽을 실행하는지 먼저 확인하세요.

5. 지정 Profile로 프로젝트 열기

--profile 뒤에 Profile 이름을 넣으면 지정한 환경으로 폴더를 열 수 있습니다. 이름에 공백이 있으므로 따옴표를 사용합니다.

Windows 예제

code --new-window "C:\Users\사용자이름\Documents\vscode-profile-practice" --profile "Web Study"

macOS 예제

code --new-window \
  "$HOME/Documents/vscode-profile-practice" \
  --profile "Web Study"

Windows의 사용자이름과 폴더 위치는 자신의 실제 경로로 바꾸세요.

정상 결과 새 VS Code 창에서 vscode-profile-practice가 열리고 제목 표시줄 또는 Manage 버튼에 Web Study가 표시됩니다. 앞에서 만든 큰 글자와 줄 바꿈 해제 문제도 그대로 재현됩니다.

공식 문서는 code 폴더경로 --profile "프로필 이름" 형식으로 특정 Profile을 선택할 수 있다고 설명합니다. 입력한 이름의 Profile이 없으면 새 Empty Profile이 생성됩니다. Profile 지정 실행 공식 문서

Profile 이름 오타 주의 Web Study를 WebStudy처럼 잘못 입력하면 오류가 아니라 새로운 빈 Profile이 만들어질 수 있습니다. 화면이 갑자기 초기 상태처럼 보이면 제목 표시줄에서 정확한 이름부터 확인하세요.

6. 확장 기능을 끄고 원인 분리하기

편집 지연, 명령 충돌, 저장 시 예상치 못한 변경처럼 확장 기능이 의심되는 문제는 모든 확장을 잠시 끈 창에서 비교할 수 있습니다. 확장을 제거하지 않으므로 진단용으로 안전합니다.

Windows

code --new-window "C:\Users\사용자이름\Documents\vscode-profile-practice" --profile "Web Study" --disable-extensions

macOS

code --new-window \
  "$HOME/Documents/vscode-profile-practice" \
  --profile "Web Study" \
  --disable-extensions

--disable-extensions는 설치된 확장을 삭제하지 않고 해당 실행에서 활성화되지 않게 합니다. Extensions 화면에서는 확장이 Disabled 구역에 보일 수 있습니다. 확장 관련 CLI 옵션 공식 문서

비교 결과가능성이 큰 원인다음 단계
확장을 끄니 문제가 사라짐설치된 확장 기능Extension Bisect 실행
확장을 꺼도 그대로Profile 설정 또는 프로젝트Temporary Profile과 비교
Temporary Profile에서도 그대로Workspace 설정·프로젝트·VS Code범위를 프로젝트 쪽으로 확대

이번 연습의 글자 크기와 줄 바꿈 문제는 확장을 꺼도 남아 있어야 정상입니다. 원인이 확장 기능이 아니라 Web Study의 User 설정이기 때문입니다.

7. Temporary Profile로 깨끗한 환경 비교하기

Temporary Profile은 빈 Profile로 시작하고 현재 VS Code 세션 동안만 유지됩니다. 기존 Profile을 수정하지 않고 설정과 확장 기능이 없는 환경을 빠르게 비교할 때 유용합니다.

  1. Web Study 창에서 명령 팔레트를 엽니다.
  2. Profiles: Create a Temporary Profile을 실행합니다.
  3. 자동 생성된 Temp 1 같은 이름을 확인합니다.
  4. index.html을 다시 확인합니다.
  5. 글자 크기와 줄 바꿈이 기본 상태로 돌아왔는지 비교합니다.
정상 결과 Temporary Profile에서는 큰 글자와 줄 바꿈 해제 문제가 사라집니다. 이 차이로 Web Study의 사용자 구성에 원인이 있음을 확인할 수 있습니다.

Temporary Profile에서는 설정과 확장을 바꿔 시험할 수 있지만 VS Code를 닫으면 Profile이 삭제됩니다. 다시 시작하면 해당 Workspace에 원래 연결된 Profile이 활성화됩니다. Temporary Profile 공식 설명

Temporary Profile에 중요한 설정을 보관하지 마세요 정상 조합을 찾았다면 값을 기록해 두고 Web Study에 다시 적용해야 합니다. Temporary Profile 자체를 장기 보관 장소로 사용하면 안 됩니다.

8. 설정 문제와 확장 문제 복구하기

설정 문제 복구: 바꾼 항목만 Reset

  1. 명령 팔레트에서 Profiles: Switch Profile을 실행해 Web Study로 돌아옵니다.
  2. Settings를 열고 User 탭에서 @modified를 검색합니다.
  3. Editor: Font Size의 톱니바퀴 메뉴에서 Reset Setting을 선택하거나 값을 16으로 되돌립니다.
  4. Editor: Word Wrap을 on으로 되돌립니다.
  5. index.html을 다시 열어 화면을 확인합니다.
{
  "editor.fontSize": 16,
  "editor.wordWrap": "on",
  "files.autoSave": "afterDelay",
  "editor.minimap.enabled": false
}
복구 완료 Web Study에서도 글자가 정상 크기로 돌아오고 긴 줄이 편집기 폭에 맞춰 줄 바꿈됩니다. Profile과 프로젝트 파일은 삭제하지 않았습니다.

Settings 편집기의 톱니바퀴 메뉴에는 설정을 기본값으로 되돌리는 Reset Setting이 있습니다. 설정 초기화 공식 문서

확장 문제 복구: Extension Bisect

확장을 모두 끈 실행에서만 문제가 사라졌다면 어떤 확장 때문인지 찾아야 합니다. 하나씩 직접 끄기보다 Extension Bisect를 사용합니다.

  1. 원래 Web Study 창에서 명령 팔레트를 엽니다.
  2. Help: Start Extension Bisect를 실행합니다.
  3. VS Code가 확장 기능의 절반을 비활성화하고 다시 로드하면 문제를 재현해 봅니다.
  4. 문제가 여전히 있는지 묻는 안내에 결과를 정확히 답합니다.
  5. 한 개의 의심 확장이 남을 때까지 같은 과정을 반복합니다.
  6. 찾은 확장을 Disable 상태로 두거나 업데이트·제거 여부를 판단합니다.

Extension Bisect는 이진 탐색 방식으로 확장 집합을 절반씩 줄이며 문제 확장을 찾습니다. 중단하려면 Stop Bisect, 이어 하려면 Help: Continue Extension Bisect를 사용할 수 있습니다. VS Code 1.52 Extension Bisect 릴리스 노트

삭제보다 Disable을 먼저 원인을 확인하는 단계에서는 확장을 바로 제거하지 말고 Disable 또는 Disable (Workspace)으로 영향 범위를 줄이는 편이 안전합니다. Extensions 화면의 더보기 메뉴에서도 Extension Bisect를 시작할 수 있습니다. 확장 관리 공식 문서

9. 잘못된 폴더·Profile 연결 되돌리기

프로젝트를 열 때마다 예상과 다른 Profile이 자동 활성화된다면 폴더 연결을 확인합니다.

폴더 하나만 되돌리기

  1. 문제 폴더를 연 상태에서 Profiles 편집기를 엽니다.
  2. 원하는 Profile의 Use this Profile for Current Window를 선택합니다.
  3. 기본 환경으로 되돌리려면 Default Profile을 선택합니다.
  4. 창을 닫았다가 폴더를 다시 열어 자동 선택을 확인합니다.

VS Code는 선택한 Profile을 현재 폴더 또는 Workspace와 연결하고 다음에 그 폴더를 열 때 다시 활성화합니다. 폴더·Workspace 연결 공식 문서

모든 로컬 폴더 연결 초기화

여러 폴더의 연결을 한꺼번에 Default Profile로 되돌려야 할 때만 다음 명령을 사용합니다.

  1. 명령 팔레트를 엽니다.
  2. Developer: Reset Workspace Profiles Associations를 검색합니다.
  3. 실행 전에 모든 로컬 폴더 연결이 초기화되는 것이 맞는지 다시 확인합니다.
  4. 실행 후 필요한 프로젝트에서 Profile을 다시 지정합니다.
범위 주의 이 명령은 현재 폴더 하나가 아니라 로컬 폴더의 Profile 연결 전체를 Default Profile로 되돌립니다. 기존 Profile 자체를 삭제하지는 않습니다. 한 폴더만 문제라면 현재 창에서 Profile을 다시 선택하는 방법을 우선 사용하세요. Profile 연결 초기화 공식 설명

Profiles 편집기의 Folders & Workspaces 영역에서는 특정 Profile과 연결된 폴더를 한곳에서 확인할 수 있습니다. 이 관리 화면은 VS Code 1.94에서 추가됐습니다. VS Code 1.94 공식 릴리스 노트

10. 직접 해보는 종합 연습

약 30분 동안 아래 순서를 직접 반복해 보세요. 명령을 실행하는 것보다 각 결과로 무엇을 판단할 수 있는지 설명하는 것이 중요합니다.

  1. 문제 재현: Web Study의 User 설정에서 글자 크기를 24 이상으로 바꾸고 증상을 기록합니다.
  2. 정확한 실행: --profile "Web Study"로 연습 프로젝트를 새 창에서 엽니다.
  3. 확장 분리: --disable-extensions를 추가한 창에서 증상이 남는지 확인합니다.
  4. 설정 분리: Temporary Profile을 만들어 같은 파일의 글자 크기를 비교합니다.
  5. 원인 판정: 확장 기능과 설정 중 어느 쪽이 원인인지 한 문장으로 적습니다.
  6. 최소 복구: Web Study에서 글자 크기 설정만 Reset하거나 16으로 되돌립니다.
  7. 연결 확인: Profiles 편집기의 Folders & Workspaces에서 연습 폴더를 찾습니다.
  8. 최종 검증: 일반 방식으로 폴더를 다시 열고 Web Study와 정상 화면이 자동 적용되는지 확인합니다.
완료 기준 지정 Profile로 프로젝트를 여는 명령을 작성할 수 있고, 확장을 끈 창과 Temporary Profile의 차이를 설명하며, 설정 하나만 되돌려 문제를 복구할 수 있으면 성공입니다.

11. 핵심 정리와 다음 편 예고

  • --profile은 프로젝트를 원하는 Profile로 정확하게 열 때 사용합니다.
  • 입력한 Profile 이름이 없으면 새 Empty Profile이 만들어지므로 이름 오타를 확인해야 합니다.
  • --disable-extensions는 확장을 삭제하지 않고 이번 실행에서만 비활성화합니다.
  • Temporary Profile은 설정과 확장 기능이 없는 환경을 빠르게 비교하고 닫으면 사라집니다.
  • 설정 문제는 @modified로 찾고 원인이 된 항목만 Reset합니다.
  • 확장 문제는 Extension Bisect로 후보를 절반씩 줄일 수 있습니다.
  • Profile 연결 전체 초기화 명령은 범위가 크므로 한 폴더의 재지정을 먼저 시도합니다.
다음 편 예고 · 새 주제 Profiles 시리즈를 마치고, 다음 글에서는 인터넷에서 받은 프로젝트를 열 때 나타나는 Workspace Trust를 다룹니다. Restricted Mode가 무엇을 막는지, 신뢰 여부를 어떻게 판단하는지, 실수로 신뢰했을 때 어떻게 되돌리는지를 안전한 예제로 연습합니다.

공식 자료

공식 문서와 릴리스 노트 확인일: 2026년 7월 27일

반응형
이 글이 유용했다면 링크를 공유해 보세요.