VS Code 설정 옮기는 법은 한 번만 이전할지, 여러 PC에서 계속 맞출지에 따라 달라진다. 새 컴퓨터에 기존 작업 환경을 가져오려면 프로필 내보내기·가져오기가 편하고, 데스크톱과 노트북을 번갈아 쓴다면 Settings Sync가 적합하다. 설정은 옮겨졌는데 확장이나 실행 환경이 달라지는 문제까지 막으려면 동기화 제외 항목도 함께 확인해야 한다.
VS Code 프로필이란? 설정 이전 전에 구분할 내용
VS Code 프로필은 설정, 단축키, 스니펫, 확장 프로그램 등 편집기 구성을 묶어 관리하는 단위다. 예를 들어 Python 작업용 구성과 프런트엔드 작업용 구성을 나누면 프로젝트에 맞춰 필요한 환경으로 전환하기 쉽다.
여기서 프로필은 옮길 구성이고, 내보내기와 Settings Sync는 그 구성을 전달하는 방법이다. 프로필을 파일로 저장해 두었다고 이후 변경 사항까지 자동으로 전달되지는 않는다. 반대로 동기화를 켜면 다른 PC에서 바꾼 내용도 계속 반영될 수 있으므로, 처음 연결할 때 기존 데이터를 확인하는 과정이 필요하다.
📌 핵심 요약
- 일회성 PC 이전·구성 공유: 프로필을 내보낸 뒤 새 PC에서 가져온다.
- 여러 PC의 지속 관리: 같은 계정으로 Settings Sync를 설정한다.
- 프로필 동기화는 최대 20개이며, SSH·Dev Container·WSL 원격 창의 확장 동기화는 지원하지 않는다.
자료 기준: 2026년 10월 확인한 Microsoft VS Code 공식 Profiles 및 Settings Sync 문서. 아래 수치는 이용자 통계가 아닌 공식 기능 제한이다.
VS Code 프로필이란? 설정 이전 전에 구분할 내용 실시간 확인하기

프로필 내보내기와 Settings Sync 차이 비교
선택 기준은 이전 후에도 두 환경을 계속 연결해 둘 필요가 있는지다. 아래 여섯 항목을 비교하면 백업 파일이 필요한 상황과 자동 동기화가 필요한 상황을 구분하기 쉽다.
| 비교 항목 | 프로필 내보내기·가져오기 | Settings Sync |
|---|---|---|
| 주요 목적 | 특정 시점의 구성 저장·공유 | 여러 기기의 구성을 지속적으로 유지 |
| 전달 방식 | 로컬 .code-profile 파일 또는 GitHub gist | 로그인 계정에 연결된 동기화 서비스 |
| 이후 변경 반영 | 다시 내보내고 가져와야 함 | 백그라운드에서 계속 동기화 |
| 계정 조건 | 로컬 파일 저장에는 GitHub 로그인 불필요, gist 저장에는 필요 | Microsoft 또는 GitHub 계정 로그인 |
| 범위 지정 | 가져올 프로필 내용을 검토해 구성 | 데이터 범주와 제외 설정으로 관리 |
| 적합한 상황 | PC 교체, 교육용 구성 배포, 변경 전 보관 | 데스크톱·노트북을 번갈아 사용하는 작업 |
실무적인 선택 기준은 “같게 유지할 항목”과 “기기마다 달라야 할 항목”을 먼저 나누는 것이다. 테마와 스니펫은 공통으로 관리하되 장치별 경로나 특정 확장은 따로 유지하는 편이 자연스럽다. 모든 항목을 맞추려 하기보다 차이가 필요한 부분을 명시하면 이전 후 수정 작업을 줄일 수 있다.
프로필 내보내기와 Settings Sync 차이 비교 바로가기
VS Code 프로필 내보내기·가져오기 단계
한 번만 설정을 옮기거나 현재 구성을 보관하려면 로컬 파일 방식부터 진행하면 된다. 내보내기 전에 기존 PC에서 옮길 프로필을 정확히 선택해야 한다.
- Profiles 편집기 열기: 왼쪽 아래 관리 톱니바퀴 메뉴에서 Profiles를 연다. 현재 창에서 사용 중인 프로필과 내보낼 프로필이 일치하는지 확인한다.
- Export... 선택: 대상 프로필의 추가 작업 메뉴에서
Export...를 실행하고 프로필 이름을 지정한다. - 저장 위치 선택: 로컬 파일 시스템을 선택하면
.code-profile확장자로 저장된다. GitHub gist를 선택하면 GitHub 로그인 후 공유 링크를 받을 수 있다. - 새 PC에서 가져오기: Profiles 편집기의 New Profile 드롭다운에서
Import Profile...을 선택한다. 저장한 파일 위치나 전달받은 프로필 URL을 지정한다. - 내용 검토 후 생성: 가져오기 화면에서 이름과 포함할 내용을 확인하고
Create를 누른다. 생성한 프로필을 현재 창에 적용한 뒤 필요한 확장과 설정을 점검한다.
파일 이름은 frontend-2026-10.code-profile처럼 용도와 저장 시점을 함께 적는 방식이 관리하기 편하다. 이는 권장 관리 방식이며 VS Code가 요구하는 이름 규칙은 아니다. 새 PC에서 별도로 수정했다면 그 변경 사항은 기존 파일에 자동 반영되지 않으므로 다시 내보내야 한다.
GitHub gist로 공유할 때는 포함된 설정에 사내 경로나 민감한 값이 들어 있는지 먼저 검토하는 편이 좋다. 설정 공유의 목적에 맞게 필요한 구성만 전달하면 다른 환경에서 발생할 혼란도 줄어든다.
Settings Sync 설정으로 여러 PC 프로필 동기화하기
지속 동기화는 기존 PC와 새 PC에서 같은 계정을 사용하는 흐름으로 설정한다. 처음 연결할 때 로컬 데이터와 클라우드 데이터가 병합되므로, 양쪽에 다른 설정이 있다면 먼저 보관할 구성을 정해 두는 편이 좋다.
- 현재 구성 보관: 유지할 프로필을 로컬 파일로 내보내 둔다. 특히 새 PC에서도 이미 설정을 수정했다면 양쪽 구성을 구분해 저장한다.
- 동기화 시작: 관리 또는 계정 메뉴에서
Backup and Sync Settings...를 선택하고 동기화할 데이터 범주를 고른다. - 계정 로그인: Microsoft 또는 GitHub 계정으로 로그인하고 브라우저 인증을 완료한다. 다른 PC에서도 동일한 계정을 선택한다.
- 프로필 범주 확인: 명령 팔레트에서
Settings Sync: Configure...를 실행하고Profiles를 선택한다. 설정·단축키·확장 등 함께 유지할 범주도 확인한다. - 적용 결과 검토: 로그인 후 병합된 구성을 확인하고, 충돌 안내가 나타나면 어느 쪽 값을 유지할지 검토한다.
프로필 동기화 한도는 최대 20개다. 이는 연결 가능한 PC 수를 뜻하지 않으며, 로컬 프로필 전체의 생성 한도와도 구분해야 한다. 프로필을 세분화해 관리한다면 실제로 동기화할 구성부터 정리하는 것이 좋다.
로그인이 끝나면 변경 사항은 백그라운드에서 계속 동기화된다. 한 PC에서 시험 삼아 바꾼 설정도 다른 PC에 영향을 줄 수 있으므로, 공통 작업 환경을 수정한다는 관점으로 관리하면 예상하지 못한 변경을 줄일 수 있다.
Settings Sync 설정으로 여러 PC 프로필 동기화하기
동기화 제외 항목과 ignoredExtensions 설정 예시
Settings Sync에서 설정 범주를 선택해도 모든 설정이 전달되는 것은 아니다. 공식 문서에 따르면 machine 및 machine-overridable 범위의 설정은 동기화에서 제외된다. 추가로 제외할 사용자 설정은 설정 편집기의 항목별 작업 메뉴나 settingsSync.ignoredSettings로 지정한다.
특정 설정·확장을 동기화에서 빼는 방법
확장 프로그램은 설치 목록과 전역 활성화 상태가 동기화 대상이다. 제외할 확장은 확장 보기의 해당 확장 작업 메뉴에서 지정하거나, 확장 ID를 settingsSync.ignoredExtensions에 추가한다. 화면에 표시되는 이름 대신 게시자.확장이름 형태의 ID를 사용한다.
다음은 글꼴 크기를 기기별로 유지하고 Microsoft Python 확장을 동기화 대상에서 제외하는 예시다. 기존 settings.json이 있다면 내용을 통째로 바꾸지 말고 필요한 키를 병합한다.
{
"settingsSync.ignoredSettings": [
"editor.fontSize"
],
"settingsSync.ignoredExtensions": [
"ms-python.python"
]
}
이 예시는 Python 확장을 반드시 제외해야 한다는 의미가 아니다. 기기마다 해당 확장의 사용 여부를 다르게 유지할 때 적용하는 방식이다. 동기화 제외를 지정한 뒤에도 각 PC에 이미 설치된 확장이 원하는 상태인지 따로 확인한다.
운영체제별 단축키와 사용자 작업의 차이
단축키는 기본적으로 운영체제별로 분리해 동기화한다. Windows와 macOS에서 같은 사용자 단축키 구성을 쓰려면 settingsSync.keybindingsPerPlatform을 false로 설정한다. 다만 운영체제 단축키와 겹칠 수 있으므로 자주 사용하는 조합부터 확인하는 편이 좋다.
작업은 사용자 수준 작업이 동기화 대상이며, 워크스페이스 작업은 포함되지 않는다. 프로젝트의 .vscode/tasks.json 같은 파일은 저장소나 별도의 프로젝트 이전 절차로 관리해야 한다. 편집기 설정을 옮기는 작업과 프로젝트 파일을 옮기는 작업을 함께 점검해야 실행 흐름이 이어진다.
동기화 제외 항목과 ignoredExtensions 설정 예시 조회하기
SSH·WSL 확장 누락과 동기화 충돌 점검하기
SSH·Dev Container·WSL 원격 창과의 확장 프로그램 동기화는 지원하지 않는다. 로컬 창에서 확장이 보이더라도 원격 작업 환경에 필요한 확장이 준비됐다는 뜻은 아니다. 원격 창을 연 뒤 확장 보기에서 해당 환경의 설치 상태를 확인해야 한다.
예를 들어 Windows에서 Python 작업 구성을 옮긴 뒤 WSL 프로젝트를 열었다면, 원격 환경의 확장 상태와 Python 실행 환경을 각각 살펴야 한다. Python·Node.js 같은 런타임, 프로젝트 의존성, 운영체제에 설치한 글꼴도 별도 확인 대상이다. 편집기 구성이 같아지는 것과 코드 실행 환경이 재현되는 것은 별개의 작업이다.
환경 이전을 검증할 때는 테마가 같은지보다 실제 프로젝트에서 저장·포맷·실행이 정상 동작하는지를 보는 편이 효과적이다. 특히 로컬과 원격을 함께 쓰는 구성에서는 활성 프로필, 확장 설치 위치, 실행 파일 경로를 순서대로 확인하면 문제 범위를 좁히기 쉽다. 이는 공식 동기화 범위를 바탕으로 한 실무적인 점검 순서다.
설정 충돌이 발생했을 때 확인할 순서
초기 연결이나 오프라인 변경 이후에는 로컬·클라우드 데이터가 충돌할 수 있다. 이때는 충돌을 해결할 때까지 동기화가 일시 중지된다. Show Conflicts에서 차이를 비교한 뒤 유지할 내용을 선택하는 것이 좋다.
Accept Local 또는 Replace Remote는 로컬 내용을 기준으로 클라우드 데이터를 덮어쓰는 방향이다. Accept Remote 또는 Replace Local은 클라우드 내용을 기준으로 로컬 데이터를 덮어쓰는 방향이므로, 버튼을 누르기 전에 대상부터 확인한다.
- 현재 창에 의도한 프로필이 적용되어 있는지 확인한다.
- 동기화 계정과 선택한 데이터 범주가 두 PC에서 맞는지 확인한다.
- 제외한 설정·확장이 예상대로 유지되는지 확인한다.
- SSH·WSL·컨테이너에서 필요한 확장과 런타임을 확인한다.
- 프로젝트를 열어 단축키, 저장 시 포맷, 작업 실행을 점검한다.
PC 교체만 마무리하려면 검증한 프로필 파일을 보관하고, 여러 PC를 계속 사용할 계획이라면 제외 항목을 정리한 뒤 동기화를 유지하면 된다. 이전 완료의 기준은 설정 파일을 전달한 시점보다 평소 작업을 다시 수행할 수 있는 시점으로 잡는 편이 정확하다.
출처: Microsoft VS Code 공식 문서 「Profiles in Visual Studio Code」의 Export·Import 안내, 「Settings Sync」의 동기화 범위·제외 설정·충돌 해결 안내. Settings Sync 문서 표기 업데이트일: 2026년 10월 14일.