Git & GitHub으로 협업하며 개발하기

2026년 5월 12일 6분
초급
2h
문서 생성 2026년 5월 12일
Git & GitHub 협업 강의 대표 이미지

Git & GitHub Collaboration

후속 강의: Git을 넘어 — 오픈소스 기여자의 세계로

강의 상세 자료

강의 개요

오픈소스 프로젝트에 처음 관심을 가진 분들을 위한 입문 특강입니다.
Git Flow 라는 검증된 브랜치 전략을 Sourcetree 라는 UI 도구로 시각적으로 살펴보고,
AI 코드 생성기(Claude Code) 와의 결합까지 한 흐름으로 다룹니다.

본 강의는 시연 중심으로 진행됩니다.

강사가 화면을 공유하며 한 사이클을 직접 보여드리고, 수강생은 흐름과 도구의 동작을 눈으로 익힙니다.
직접 따라 하며 PR을 보내는 본격 실습은 별도 코스에서 다룹니다.

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#e3f2fd','primaryBorderColor':'#90caf9','lineColor':'#546e7a','textColor':'#333','mainBkg':'#fafafa','nodeBorder':'#90a4ae','clusterBkg':'#f5f5f5','clusterBorder':'#bdbdbd'}}}%% flowchart LR subgraph 혼자["혼자 개발"] S1["로컬\n파일"] --> S2["수정"] --> S3["저장"] end subgraph 협업["함께 개발"] C1["main"] --> C2["develop"] --> C3["feature"] C3 --> C4["PR\n리뷰"] --> C5["배포"] end 혼자 -- "Git Flow로 진화" --> 협업 style S1 fill:#bbdefb,stroke:#1976d2,stroke-width:2px,rx:10,ry:10 style S2 fill:#eceff1,stroke:#546e7a,stroke-width:2px,rx:10,ry:10 style S3 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style C1 fill:#bbdefb,stroke:#1976d2,stroke-width:2px,rx:10,ry:10 style C2 fill:#bbdefb,stroke:#1976d2,stroke-width:2px,rx:10,ry:10 style C3 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style C4 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style C5 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style 혼자 rx:15,ry:15 style 협업 rx:15,ry:15

강의 흐름

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#e3f2fd','primaryBorderColor':'#90caf9','lineColor':'#546e7a','textColor':'#333','mainBkg':'#fafafa','nodeBorder':'#90a4ae','clusterBkg':'#f5f5f5','clusterBorder':'#bdbdbd'}}}%% flowchart LR subgraph 전반부["전반부 — 기초"] direction TB P1["Part 1\nGit & GitHub 기초"] P2["Part 2\nSourcetree 입문"] P1 --> P2 end subgraph 중반부["중반부 — Git Flow"] direction TB P3["Part 3\nGit Flow 이해"] P4["Part 4\nSourcetree의\nGit Flow 메뉴"] P5["Part 5\nPR & 코드 리뷰"] P3 --> P4 --> P5 end subgraph 후반부["후반부 — AI · 오픈소스"] direction TB P6["Part 6\nAI 코드 생성기와\nGit Flow"] P7["Part 7\n시연: Claude Code +\nGit Flow 타이머"] P8["Part 8\n오픈소스 기여"] P6 --> P7 --> P8 end 전반부 --> 중반부 --> 후반부 style P1 fill:#e3f2fd,stroke:#90caf9,stroke-width:2px,rx:10,ry:10 style P2 fill:#e3f2fd,stroke:#90caf9,stroke-width:2px,rx:10,ry:10 style P3 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style P4 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style P5 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style P6 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style P7 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style P8 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style 전반부 rx:15,ry:15 style 중반부 rx:15,ry:15 style 후반부 rx:15,ry:15

Git Flow 브랜치 모델

%%{init: { 'gitGraph': {'mainBranchName':'main'}, 'themeVariables': {'git0':'#1976d2','git1':'#388e3c','git2':'#f9a825','git3':'#d32f2f','git4':'#7b1fa2'}}}%% gitGraph commit id: "init" branch develop commit id: "dev start" branch feature/timer commit id: "timer skeleton" commit id: "start/pause/reset" checkout develop merge feature/timer branch release/0.1.0 commit id: "prepare release" checkout main merge release/0.1.0 tag: "v0.1.0" checkout develop merge release/0.1.0 checkout main branch hotfix/critical commit id: "fix bug" checkout main merge hotfix/critical tag: "v0.1.1" checkout develop merge hotfix/critical

학습 목표

  • Git과 GitHub의 핵심 개념을 협업 관점에서 이해합니다.
  • Sourcetree 의 화면에서 Git 명령어가 어떻게 시각화되는지 파악합니다.
  • Git Flow 의 다섯 가지 브랜치(main, develop, feature, release, hotfix) 역할과 흐름을 이해합니다.
  • Pull Request와 코드 리뷰가 협업 사이클 안에서 어떻게 작동하는지 시연으로 살펴봅니다.
  • AI 코드 생성기(Claude Code)와 Git Flow를 결합한 현대적 개발 흐름을 관찰합니다.
  • 오픈소스 프로젝트에 기여하는 전 과정을 머릿속에 그릴 수 있게 됩니다.

수강 대상 · 선수 지식

수강 대상선수 지식
Git/GitHub 협업 흐름을 한눈에 보고 싶은 학생·신입 개발자기본적인 터미널/CLI 사용 경험 (없어도 무방)
Git Flow의 큰 그림이 궁금한 주니어 개발자·팀장하나 이상의 프로그래밍 언어로 코드 작성 경험
오픈소스 기여의 전 과정이 궁금한 분Git/GitHub 사용 경험은 필요하지 않음
AI 코드 생성기와 협업 워크플로의 결합을 살펴보고 싶은 분AI 코드 생성기 사용 경험도 필요하지 않음

시연 환경

항목구성
기기MacBook 또는 Windows 노트북
메인 GUI 도구Sourcetree (Git Flow 기능 내장)
보조 CLI 도구Git 명령어 (개념 비교용)
AI 코드 생성기Claude Code
협업 플랫폼GitHub (계정 필요)
시연 프로젝트간단한 타이머 웹 앱 (HTML/JS)

강의 구성

Part 1 — Git & GitHub 기초

  • Git이란: 변경 이력을 기록하고 되돌릴 수 있는 분산 버전 관리 시스템
  • 핵심 개념: 네 가지 공간(Working Directory / Staging Area / Local Repository / Remote Repository), 커밋과 브랜치
  • GitHub 계정과 첫 저장소 만들기
  • 기본 명령어 한 사이클: clone → add → commit → push → pull
  • GitHub 웹 UI 둘러보기: Repository / Issues / Pull Requests / Actions

Part 2 — Sourcetree 입문

  • 왜 GUI를 쓰는가: 그래프로 보면 브랜치·머지가 한눈에 들어옵니다
  • 설치와 GitHub 계정 연결, 저장소 Clone
  • Sourcetree로 따라 해 보기: 커밋, 브랜치 생성, Push/Pull, Stash
  • CLI 명령어와 1:1 대응표로 익히기
  • 같은 작업을 CLI / GUI 양쪽으로 수행해 보기
  • 에디터에서 보는 Git: VS Code의 거터·파일 탐색기 색상·Source Control 패널로 변경 즉시 확인

Part 3 — Git Flow 워크플로 이해하기

  • Git Flow란? Vincent Driessen이 제안한 브랜치 전략
  • 다섯 가지 브랜치의 역할:
    • main — 항상 배포 가능한 안정 버전
    • develop — 다음 릴리스를 향한 통합 브랜치
    • feature/* — 새 기능 개발
    • release/* — 릴리스 준비
    • hotfix/* — main의 긴급 수정
  • 분기와 병합 규칙, 머지 방향성 (어디서 따와서 어디로 합치는가)
  • Git Flow vs GitHub Flow — 릴리스 주기가 긴 프로젝트 vs 빠른 배포 프로젝트에서의 선택 (Trunk-based는 한 줄로만 언급)
  • 오픈소스 프로젝트에서 Git Flow가 자주 쓰이는 이유

Part 4 — Sourcetree의 Git Flow 메뉴 살펴보기

  • Sourcetree에 내장된 Git Flow 기능 위치와 메뉴 구성
  • git flow init / feature start|finish / release start|finish / hotfix start|finish
    • 각 메뉴가 어떤 Git 명령들을 묶어 실행하는지 짧게 확인
  • 메뉴 한 번 클릭 = “Vincent Driessen의 표준 흐름"을 그대로 실행
  • 실제 한 사이클을 끝까지 돌리는 모습은 Part 7에서 Claude Code와 함께 시연

Part 5 — Pull Request와 코드 리뷰

  • Pull Request의 의미: “내 브랜치를 합쳐 주세요” + “리뷰해 주세요”
  • 좋은 PR의 조건: 작은 크기, 명확한 제목/설명, 의미 있는 커밋 단위
  • 코드 리뷰 주고받기: 인라인 코멘트, 변경 요청, 승인, Resolve
  • 충돌 해결을 Sourcetree에서 시각적으로 처리하기
  • Merge vs Rebase vs Squash — 머지 전략의 선택지

Part 6 — AI 코드 생성기와 Git Flow

  • AI 코드 생성기 시대의 개발 흐름 (Claude Code, Copilot, Cursor 등)
  • 왜 Git Flow가 AI 시대에도 유효한가:
    • feature/* = AI가 한 번에 다루기 좋은 작업 단위
    • PR = AI 생성 코드를 사람이 검토하는 자연스러운 관문
    • release/* = AI 변경이 누적된 묶음을 한 번 더 검증
    • hotfix/* = AI가 만든 회귀 버그를 빠르게 되돌리는 길
  • AI 생성 코드 리뷰 시 추가로 봐야 할 것 (환각, 라이선스, 보안)
  • AI에게 커밋 메시지와 PR 설명을 맡기는 법, 그리고 한계

Part 7 — 시연: Claude Code + Git Flow로 타이머 앱 만들기

강사가 빈 저장소부터 배포까지 한 사이클을 화면 공유로 직접 보여드립니다.

  • 빈 저장소 생성 → Sourcetree에서 Clone
  • Git Flow 초기화 (develop, main 자동 생성)
  • feature/timer 시작 — Sourcetree의 Git Flow 메뉴 클릭
  • Claude Code로 구현:
    • Start / Pause / Reset 기능 구현
    • Claude Code에게 작은 단위로 작업을 요청하는 시연
  • 의미 있는 커밋 단위로 나누기 — Sourcetree 그래프로 시각 확인
  • Push → GitHub에서 Pull Request 생성 → PR 화면과 리뷰 인터페이스 둘러보기
  • 머지 → release/0.1.0 생성 → 태깅 → main 배포 시연
  • 일부러 버그를 심어 보고 hotfix/... 흐름까지 한 번 더 시연

Part 8 — 오픈소스 기여 흐름 살펴보기

  • 오픈소스 문화 이해: README.md · LICENSE · CONTRIBUTING.md · CODE_OF_CONDUCT.md · CHANGELOG.md
  • 좋은 첫 이슈(Good First Issue) 찾는 법
  • Fork → Branch → PR로 이어지는 외부 기여 흐름을 실제 저장소 화면으로 둘러보기
  • 메인테이너와 소통하는 매너 (리뷰 대기, 변경 요청 대응)
  • AI 생성 코드를 오픈소스에 기여할 때의 주의점 (라이선스, 명시, 검토 책임)

강의 방식

  • 형태: 오프라인 대면 강의 또는 Zoom (약 2시간)
  • 시연 중심: 강사가 화면을 공유하며 한 사이클을 직접 보여드리는 형태
  • UI 중심: Sourcetree로 시각적으로 진행, CLI는 대조용으로만 사용
  • AI 결합 시연: Claude Code와 Git Flow를 결합한 타이머 앱 시연 (Part 7)
  • 상용 서비스 미사용: 모든 도구는 누구나 받아 쓸 수 있는 오픈소스/무료 도구로 구성
  • 코드 공유: 시연 코드와 단계별 커밋 히스토리를 GitHub 저장소에 공개
  • 질의응답: 강의 중 자유 질문 허용, 마지막 15분 별도 Q&A
  • 본격 실습은 별도 코스: 직접 따라 하며 PR을 보내고 코드 리뷰까지 받는 형태는 후속 코스로 운영 예정

핵심 메시지 요약

파트핵심 메시지
Part 1Git은 “변경의 이력"을, GitHub은 “협업의 장"을 제공합니다
Part 2Sourcetree로 브랜치를 그래프로 보면 머릿속에 Git의 멘탈 모델이 빠르게 자리잡습니다
Part 3Git Flow의 다섯 브랜치는 “안정성, 통합, 개발, 릴리스, 긴급 수정"이라는 다섯 가지 시간대를 분리합니다
Part 4Sourcetree의 Git Flow 메뉴는 복잡한 명령을 한 번의 클릭으로 줄여 줍니다
Part 5좋은 PR과 좋은 리뷰가 곧 좋은 협업입니다 — 코드보다 맥락을 먼저 전달하세요
Part 6AI 코드 생성기는 Git Flow의 feature·PR·release 구조 위에서 가장 안전하게 동작합니다
Part 7Claude Code + Git Flow 한 사이클이 처음부터 끝까지 흘러가는 모습을 따라가 보며 협업 감각을 익힙니다
Part 8첫 오픈소스 기여는 “코드"가 아니라 “맥락과 대화"에서 시작됩니다

문의

강의 일정 및 비용 문의는 이메일로 연락 주세요.