🚨 주요 문제 상황 및 해결방안

1. VS Code Git 커밋이 무한 로딩되는 문제

🔍 증상

  • 소스제어 탭 아이콘에 시계 표시
  • 진행 바가 계속 이동
  • 커밋이 완료되지 않음

🔎 원인 진단

# Git 프로세스 확인
ps aux | grep git | grep -v grep

해결방법

# 1. 멈춘 Git 프로세스 종료
pkill -f git

# 2. Git 잠금 파일 제거
rm -f .git/index.lock
rm -f .git/COMMIT_EDITMSG*
rm -f .git/HEAD.lock
rm -f .git/config.lock

# 3. Git 에디터 설정 변경 (근본 해결)
git config --global core.editor "nano"

# 4. VS Code 설정 최적화

📝 VS Code 설정 (settings.json)

{
  "git.useEditorAsCommitInput": false,
  "git.terminalAuthentication": false,
  "git.enableSmartCommit": true,
  "git.confirmSync": false
}

2. npm 글로벌 설치 권한 오류

🔍 증상

npm error code EACCES
npm error syscall mkdir
npm error Error: EACCES: permission denied

해결방법

# nvm 사용 (권장)
nvm use --delete-prefix [version] --silent

# 또는 npm 글로벌 디렉터리 변경
mkdir -p ~/.npm-global
npm config set prefix ~/.npm-global
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

3. Git 브랜치 갈라짐 (Divergent Branches)

🔍 증상

fatal: Need to specify how to reconcile divergent branches
hint: You have divergent branches

🔎 상황 파악

# 원격과 로컬 상태 비교
git log --oneline origin/master
git log --oneline master
git ls-tree origin/master

해결방법

# 안전한 병합 (추천)
git config pull.rebase false
git pull origin master

# 또는 로컬을 원격에 맞추기
git reset --hard origin/master

4. GitHub 인증 오류

🔍 증상

Support for password authentication was removed
Authentication failed
Repository not found

SSH 키 설정 (권장)

# SSH 키 생성
ssh-keygen -t ed25519 -C "your-email@example.com"

# 공개키 복사
cat ~/.ssh/id_ed25519.pub

# GitHub에 등록 후 테스트
ssh -T git@github.com

# 원격 저장소 SSH로 변경
git remote set-url origin git@github.com:username/repo.git

🔧 예방 및 초기 설정

WSL + VS Code 환경 설정

# 1. Node.js 설치 (nvm 사용)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
source ~/.bashrc
nvm install --lts

# 2. Git 사용자 정보 설정
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
git config --global core.editor "nano"

# 3. SSH 키 설정
ssh-keygen -t ed25519 -C "your.email@example.com"
# GitHub에 공개키 등록

# 4. VS Code 설정
# settings.json에 Git 최적화 설정 추가

Claude Code 설치

# npm으로 설치
npm install -g @anthropic-ai/claude-code

# 실행 및 인증
claude

🆘 자주 발생하는 문제들

VS Code에서 Git 명령어가 안 보일 때

  1. Ctrl+Shift+X → @builtin git 검색
  2. Git 확장 활성화 확인
  3. Developer: Reload Window 실행

Windows Git vs WSL Git 충돌

# WSL 내 Git 사용 확인
which git
# 결과: /usr/bin/git (WSL) ✅
# 결과: /mnt/c/... (Windows) ❌

# Windows Git 설치 확인
ls /mnt/c/Program\ Files/Git/

Git 히스토리 오류 (fatal: bad revision)

  • 원인: 첫 커밋이 없는 상태
  • 해결: git commit -m "Initial commit" 실행

📋 트러블슈팅 체크리스트

문제 발생 시 순서대로 확인

  1. Git 프로세스 상태
  2. ps aux | grep git | grep -v grep
  3. Git 상태 확인
  4. git status git remote -v
  5. VS Code 연결 상태
    • 좌측 하단 "WSL: Ubuntu" 표시 확인
    • Git 확장 활성화 상태 확인
  6. 권한 및 인증
  7. ssh -T git@github.com git config --list | grep user
  8. 파일 잠금 상태
  9. ls -la .git/*.lock 2>/dev/null || echo "No lock files"

⚡ 빠른 문제 해결

🚨 응급처치 (대부분의 문제 해결)

# 1. 모든 Git 프로세스 종료
pkill -f git

# 2. Git 잠금 해제
rm -f .git/*.lock

# 3. VS Code 새로고침
# Ctrl+Shift+P → "Developer: Reload Window"

# 4. Git 상태 확인
git status

🔄 완전 초기화 (최후 수단)

# VS Code 서버 재시작
pkill -f vscode-server
code .

# 또는 Git 저장소 재초기화
rm -rf .git
git init
git remote add origin [your-repo-url]

📚 유용한 명령어 모음

# Git 상태 종합 확인
git status
git log --oneline -5
git remote -v

# VS Code Git 로그 확인
# VS Code → Ctrl+Shift+U → "Git" 선택

# SSH 연결 테스트
ssh -T git@github.com

# npm 전역 패키지 확인
npm list -g --depth=0

# WSL 환경 확인
echo $WSL_DISTRO_NAME
uname -a

 

+ Recent posts