반응형
Git을 활용한 코드 동기화
Git을 활용한 코드 동기화는 호스트와 우분투 가상머신 간 개발 프로젝트를 효율적으로 관리하는 가장 체계적인 방식입니다. 단순한 파일 이동을 넘어, 코드 버전 관리, 변경 이력 추적, 협업 구조까지 자연스럽게 포함하기 때문에 장기적인 개발 환경 구성에서 필수적인 전략이 됩니다. 또한 이 방식은 실제 서버 배포, CI/CD 파이프라인, GitHub 협업 과정과도 동일하여 학습 가치가 큽니다.
● Git 동기화 방식의 핵심 개념
Git을 활용하면 호스트와 VM이 동시에 같은 프로젝트를 안전하게 관리할 수 있습니다.
구조 예시:
GitHub (중앙 저장소)
↕
호스트 Windows
↕
Ubuntu VM
즉, 프로젝트를 중앙 원격 저장소로 관리하고, 호스트와 VM은 서로 코드만 동기화합니다.
이 방식은 수정, 테스트, 배포를 깔끔하게 분리할 수 있다는 장점이 있습니다.
● 기본 개발 흐름
일반적인 작업 순서는 다음과 같습니다.
- 호스트에서 코드 작성(VS Code 등 사용)
- Git add → commit → push
- 우분투 VM에서 pull
- VM 터미널에서 서버 실행 및 테스트
반대로 VM에서 수정을 하더라도 동일하게 commit 후 push, 이후 호스트에서 pull 하면 됩니다.
● 필수 설정
1) Git 설치 확인
VM에서
sudo apt update
sudo apt install git
2) 사용자 정보 설정
git config --global user.name "사용자명"
git config --global user.email "이메일주소"
● 클론 및 작업 예시
원격 저장소 클론
git clone https://github.com/username/project.git
호스트에서 코드 수정 후
git add .
git commit -m "기능 추가"
git push
우분투에서 업데이트
git pull
이 방식으로 파일 무결성과 변경 내용이 체계적으로 유지됩니다.
● 장점
| 항목 | 설명 |
| 버전 관리 | 코드 변경 내역 유지, 롤백 용이 |
| 협업 용이성 | 여러 개발자가 동일 프로젝트 작업 가능 |
| 환경 분리 | 호스트는 IDE, VM은 실행 환경 |
| 실전 대응 | 실제 서버 배포 방식과 동일 |
특히 **"코드는 로컬이 아닌 Git에서 관리한다"**는 개발 표준에 익숙해진다는 점이 중요합니다.
● 추천 워크플로우
| 호스트 | VM |
| VS Code로 작성 | 서버 실행 및 테스트 |
| Git push | Git pull |
| 로컬에서 문서·기획 | VM에서 성능·환경 테스트 |
● 팁 및 주의 사항
- .env, 인증키, DB 파일은 .gitignore로 제외
- 대용량 파일은 Git LFS 또는 SCP 활용
- 푸시 전 테스트 습관(특히 Django/Flask)
예시 .gitignore
*.pyc
.env
__pycache__/
venv/
db.sqlite3
● 결론
Git 기반 코딩 방식은 개발자에게 아래 능력을 동시에 제공합니다.
- 코드 관리 능력
- 서버 배포 경험과 동일한 패턴 습득
- 재현 가능한 개발 환경 유지
- 협업 대비
우분투 VM 학습이 곧 실제 서버 구성 훈련으로 이어진다는 점에서 Git 활용은 가장 성장 가치가 높은 방식입니다.
반응형
'Linuxpia > 리눅스 사용 팁' 카테고리의 다른 글
| 데이터·문서 공유 대안(Samba, 클라우드 등) (1) | 2025.11.17 |
|---|---|
| 로컬 웹 브라우저 연동 (2) | 2025.11.15 |
| SCP 및 SFTP 파일 전송 (0) | 2025.11.12 |
| 클립보드 공유 및 Drag & Drop (3) | 2025.11.10 |
| 공유 폴더(Shared Folder) (1) | 2025.11.07 |