컨텐츠 검색
Git / GitHub / GitHub Desktop 핵심 정리

2025. 12. 30. 20:53Dev Log/Project: TEXT RPG

오늘 팀원 5명이서 Git 숙련을 위해 하나의 리포지토리에서 PR과 Rebase, Merge 충돌 해결하는 모임을 마련해 진행했다.
아래는 그에 대한 내용을 정리한 것이다.

1. 로컬 작업 (내 PC)

  • Commit
    수정한 파일을 로컬 브랜치에 하나의 변경 이력으로 저장
    → “작업 결과를 스냅샷으로 남긴다”
  • Git Publish
    로컬에서 새 브랜치를 만든 뒤
    원격 저장소에 해당 브랜치를 처음으로 생성
    → “이 브랜치를 원격에도 공개한다”

2. 원격 저장소와 동기화

  • Push
    로컬 브랜치에 있는 Commit 내역을 원격 저장소에 업로드
    → “내 작업을 서버에 반영”
  • Fetch
    원격 저장소의 최신 상태를 가져오기만 함
    (로컬 브랜치에는 반영 ❌)
    → “원격에 뭐가 바뀌었는지 확인”
  • Pull
    Fetch + Merge
    원격 브랜치의 변경 내용을 로컬 브랜치에 바로 반영
    → “원격 변경 사항을 내 작업에 합친다”

3. 협업 & 코드 리뷰

  • Pull Request (PR)
    현재 브랜치의 변경 내용을
    다른 브랜치(보통 main/develop)에 합쳐달라고 요청
    → 이 과정에서 코드 리뷰 진행
  • Add single comment
    특정 한 위치에 댓글 하나만 바로 등록
  • Start a review
    여러 파일·여러 위치에 댓글을 달고
    한 번에 리뷰로 제출

4. 충돌 처리

  • Resolve conflict
    같은 파일의 같은 부분을 서로 다르게 수정했을 때 발생
    • 상단: 내 로컬 코드
    • 하단: 원격 코드
    • 필요한 코드만 선택하거나 조합해서 최종 코드 작성
    • 저장 후 충돌 해결 완료

5. 한 줄 흐름 요약

작업 → Commit → (필요 시 Publish) → Push → Pull Request → Review → Merge