본문 바로가기
IT

VS Code 설정 한 번에 백업하고 새 맥에서 복원하는 방법

by qwanjk 2025. 7. 23.
반응형

 

VS Code를 오래 사용하다 보면 설정 파일이나 확장 프로그램이 많이 쌓이게 돼요. 새로운 맥북을 구입하거나 다른 컴퓨터에서 작업할 때 이런 설정들을 일일이 다시 하는 게 정말 번거롭죠. 간단한 스크립트로 이 모든 과정을 자동화할 수 있어요.

 

macOS에서 VS Code 설정 파일은 ~/Library/Application Support/Code/User 폴더에 저장돼요. 이 위치에 있는 몇 가지 파일만 백업하면 거의 모든 설정을 복원할 수 있어요.

# VS Code 설정 파일 위치 (macOS)
VSCODE_DIR="$HOME/Library/Application Support/Code/User"

 

 

백업 스크립트 만들기

 

먼저 현재 설정을 백업하는 스크립트를 만들어볼게요. 날짜별로 백업 폴더를 생성해서 관리하면 편해요.

#!/bin/bash

# 백업할 디렉터리 설정
VSCODE_DIR="$HOME/Library/Application Support/Code/User"
BACKUP_DIR="$HOME/Desktop/vscode-backup-$(date +%Y%m%d)"

# 백업 폴더 생성
mkdir -p "$BACKUP_DIR"

# settings.json 백업
if [ -f "$VSCODE_DIR/settings.json" ]; then
    cp "$VSCODE_DIR/settings.json" "$BACKUP_DIR/"
    echo "settings.json 백업 완료"
fi

# keybindings.json 백업
if [ -f "$VSCODE_DIR/keybindings.json" ]; then
    cp "$VSCODE_DIR/keybindings.json" "$BACKUP_DIR/"
    echo "keybindings.json 백업 완료"
fi

# snippets 폴더 백업
if [ -d "$VSCODE_DIR/snippets" ]; then
    cp -r "$VSCODE_DIR/snippets" "$BACKUP_DIR/"
    echo "snippets 폴더 백업 완료"
fi

# 확장 프로그램 목록 저장
code --list-extensions > "$BACKUP_DIR/extensions.txt"
echo "확장 프로그램 목록 저장 완료"

echo "백업이 완료되었어요: $BACKUP_DIR"

 

이 스크립트를 backup-vscode.sh 파일로 저장하고 실행 권한을 주면 돼요.

chmod +x backup-vscode.sh
./backup-vscode.sh

 

반응형

 

복원 스크립트 만들기

 

백업한 설정을 새 맥에서 복원하는 스크립트도 만들어볼게요. 확장 프로그램까지 자동으로 설치되도록 구성했어요.

#!/bin/bash

# 복원할 설정이 있는 폴더 경로
BACKUP_DIR="$HOME/Desktop/vscode-backup-20241223"  # 실제 백업 폴더로 변경
VSCODE_DIR="$HOME/Library/Application Support/Code/User"

# VS Code 설정 디렉터리 생성
mkdir -p "$VSCODE_DIR"
mkdir -p "$VSCODE_DIR/snippets"

# settings.json 복원
if [ -f "$BACKUP_DIR/settings.json" ]; then
    cp "$BACKUP_DIR/settings.json" "$VSCODE_DIR/"
    echo "settings.json 복원 완료"
fi

# keybindings.json 복원
if [ -f "$BACKUP_DIR/keybindings.json" ]; then
    cp "$BACKUP_DIR/keybindings.json" "$VSCODE_DIR/"
    echo "keybindings.json 복원 완료"
fi

# snippets 복원
if [ -d "$BACKUP_DIR/snippets" ]; then
    cp -r "$BACKUP_DIR/snippets/" "$VSCODE_DIR/"
    echo "snippets 폴더 복원 완료"
fi

# 확장 프로그램 설치
if [ -f "$BACKUP_DIR/extensions.txt" ]; then
    echo "확장 프로그램 설치를 시작해요..."
    while IFS= read -r extension; do
        code --install-extension "$extension"
        echo "$extension 설치 완료"
    done < "$BACKUP_DIR/extensions.txt"
fi

echo "VS Code 설정 복원이 완료되었어요!"

 

dotfiles와 함께 관리하기

 

더 체계적으로 관리하고 싶다면 dotfiles 저장소를 만들어서 심볼릭 링크로 연결하는 방법도 있어요.

# dotfiles 저장소 구조
~/dotfiles/
├── vscode/
│   ├── settings.json
│   ├── keybindings.json
│   ├── snippets/
│   └── extensions.txt

 

심볼릭 링크를 만드는 스크립트예요.

#!/bin/bash

# dotfiles 경로
DOTFILES_DIR="$HOME/dotfiles"
VSCODE_CONFIG_DIR="$HOME/Library/Application Support/Code/User"

# 기존 설정 파일을 dotfiles로 이동
mv "$VSCODE_CONFIG_DIR/settings.json" "$DOTFILES_DIR/vscode/"
mv "$VSCODE_CONFIG_DIR/keybindings.json" "$DOTFILES_DIR/vscode/"
mv "$VSCODE_CONFIG_DIR/snippets" "$DOTFILES_DIR/vscode/"

# 심볼릭 링크 생성
ln -sf "$DOTFILES_DIR/vscode/settings.json" "$VSCODE_CONFIG_DIR/settings.json"
ln -sf "$DOTFILES_DIR/vscode/keybindings.json" "$VSCODE_CONFIG_DIR/keybindings.json"
ln -sf "$DOTFILES_DIR/vscode/snippets" "$VSCODE_CONFIG_DIR/snippets"

echo "심볼릭 링크 설정 완료"

 

한 줄 명령어로 간단하게

 

급하게 백업하거나 복원해야 할 때는 한 줄 명령어로도 가능해요.

 

확장 프로그램 목록 백업:

code --list-extensions > ~/Desktop/vscode-extensions.txt

 

확장 프로그램 일괄 설치:

cat ~/Desktop/vscode-extensions.txt | xargs -n 1 code --install-extension

 

설정 파일 백업:

cp ~/Library/Application\ Support/Code/User/settings.json ~/Desktop/

 

추가 팁과 주의사항

 

백업 스크립트에 압축 기능을 추가하면 더 편리해요.

# 백업 폴더를 압축
cd "$HOME/Desktop"
tar -czf "vscode-backup-$(date +%Y%m%d).tar.gz" "vscode-backup-$(date +%Y%m%d)"
rm -rf "vscode-backup-$(date +%Y%m%d)"

 

자주 사용하는 테마나 언어 설정도 함께 백업하려면 locale.json 파일도 포함시키면 돼요.

# locale.json 백업 추가
if [ -f "$VSCODE_DIR/locale.json" ]; then
    cp "$VSCODE_DIR/locale.json" "$BACKUP_DIR/"
fi

 

새 맥에서 복원할 때는 VS Code가 먼저 설치되어 있어야 해요. 그리고 확장 프로그램 설치는 인터넷 연결이 필요하니 이 점도 잊지 마세요.

 

GitHub에 dotfiles 저장소를 만들어두면 어디서든 git clone 한 번으로 설정을 가져올 수 있어요. 특히 여러 대의 맥을 사용하거나 팀원들과 설정을 공유할 때 정말 유용해요.

 

 

2025.07.23 - [생산성] - 파이썬으로 노션 할일 자동화하기: 매일 아침 오늘 날짜로 생성하는 방법

 

파이썬으로 노션 할일 자동화하기: 매일 아침 오늘 날짜로 생성하는 방법

매일 반복되는 할일을 노션에 수동으로 입력하는 것이 번거로우신가요? Python과 Notion API를 활용하면 매일 아침 자동으로 오늘 날짜의 할일이 생성되도록 설정할 수 있어요. macOS 환경에서 이 자

qwanjk.tistory.com

 

반응형