Skip to Content
DevOps Ecosystem Part 01

[Git] DevOps 에코시스템의 중심축

현대 DevOps 환경에서 Git은 단순한 버전 관리 도구를 넘어 Single Source of Truth(단일 진실 공급원) 역할을 한다. 코드부터 인프라 설정까지 모든 것이 여기에 기록되며, CI/CD 파이프라인의 시작점이 된다.
VS

Git vs GitHub: 도구와 서비스의 차이

많은 개발자들이 Git과 GitHub을 혼용하지만, Git은 도구(Tool)이고 GitHub은 서비스(Service)다. 파일과 클라우드 스토리지를 비교하듯 이해하면 명확하다.

비교 항목
Git (Tool)
GitHub (Service)
정의로컬 버전 관리 소프트웨어웹 기반 Git 저장소 호스팅 서비스
설치 위치개인의 로컬 컴퓨터클라우드 서버 (인터넷 상)
핵심 기능변경 이력 추적, 브랜치/머지 관리팀 협업, PR/코드 리뷰, CI/CD 통합 (Actions)
오프라인 작업 완전 가능 (로컬 저장소 독립 실행)❌ 불가능 (인터넷 연결 필수)
인터페이스CLI(터미널) 또는 GUI (Sourcetree 등)웹 브라우저 기반 직관적 UI
용량/비용무료 (오픈소스)무료/유료 플랜 (Private Repo 제한)

Git 단독 사용 (로컬)

git init # 저장소 생성
git add .
git commit # 오프라인 스냅샷

개인 프로젝트, IaC 실험 등 독립 개발에 최적화된 로컬 환경.

GitHub 협업 (DevOps)

git push origin main # 동기화
Create Pull Request # 리뷰
GitHub Actions # 자동 배포

팀 협업, 코드 리뷰, 자동화 파이프라인 구축 시 필수.

?

DevOps에서의 Git 위상: 왜 필수인가?

CI/CD 트리거

Git Commit이 자동화 파이프라인을 발동시키는 첫 신호탄이다.

코드로서의 인프라

K8s 매니페스트, Terraform 등 모든 인프라 정의를 코드로 관리한다.

투명한 협업

변경 이력과 코드 리뷰를 통해 기술 부채를 체계적으로 관리한다.

1

메커니즘 이해: 데이터 흐름 파악

Working Directory

실제 파일 수정이 일어나는 공간. 실험적 변경을 자유롭게 테스트한다.

$ Code Edit...
2

워크플로우 최적화: 브랜치 전략

Branch Simulator

v1.0fixv1.1mergebranchfeatfix
main프로덕션 배포용
feature/dev개발·병합 후 main에 반영

MAIN 브랜치

프로덕션에 바로 반영 가능한 안정 버전만 유지한다. 배포 파이프라인과 직접 연결된다.

FEATURE 브랜치

새로운 기능이나 IaC 변경을 독립적으로 개발한다. 메인 코드에 영향을 주지 않고 안전하게 실험한다.

3

협업 허브와 품질 보증 (PR)

PUSH & PULL

로컬 변경사항을 클라우드(GitHub)로 업로드하고, 팀원의 최신 변경을 동기화한다.

Pull Request (PR)

품질 게이트 역할을 수행한다. 모든 게이트(테스트, 리뷰) 통과 시에만 메인에 병합된다.

Code Review 예시

SRE Engineer B

"이 Dockerfile의 베이스 이미지를 Alpine으로 변경하면 보안과 이미지 크기가 개선될 것 같다."

PR Approved