[git & github]

밍도이·2025년 4월 1일

git과 github란?

git: 분산 버전 관리 시스템으로, 파일의 변경 사항을 기록하고 되돌릴 수 있으며, 여러 명이 동시에 작업해도 충돌을 최소화해주는 도구.
github: git을 웹 기반으로 사용할 수 있게 만든 플랫폼으로, 코드 저장소를 공유하고 협업할 수 있다.

git의 구조

git에는 3개의 영역과 4개의 상태가 존재한다.

3가지 영역 (로컬저장소)
1. Working Directory (작업 디렉토리) → 내가 실제로 코드를 수정하는 공간
2. Staging Area (인덱스) → 커밋할 파일을 올려두는 임시 저장소 (git add)
3. Repository (로컬 저장소) → git commit을 통해 기록이 저장되는 내부 공간

4가지 파일 상태
1. Untracked: Git이 추적하고 있지 않은 파일
2. Modified: 수정되었지만 Staging Area에 올라가지 않은 상태
3. Staged: 커밋을 기다리는 상태 (add됨)
4. Committed: 로컬 저장소에 기록된 상태

로컬저장소와 원격저장소?

  • 내 컴퓨터 안에서 Git이 관리하는 저장소가 로컬저장소!이며 위에서 언급한 3가지 영역이 존재한다.
  • 원격저장소는 github(remote repository)로 로컬저장소에 있던 .git directory의 내용을 업로드하는 곳이다.

브랜치(git branch)란?

브랜치는 독립된 작업 공간을 의미한다. main 브랜치를 깨끗하게 유지하면서 새로운 기능을 새 브랜치에서 자유롭게 개발할 수 있다.

git checkout -b 브랜치명  # 브랜치 생성 + 이동

브랜치를 나누면?!
어떤 작업을 해도 main에 영향이 없으며, 팀원들과 나눠 작업하고 나중에 병합이 가능하다!

GitHub에서 PR(Pull Request) 보내기

만약 새로운 브랜치에서 기능을 완성한 후에 GitHub의 main 브랜치에 병합하려고 한다면?!

  1. 새로운 브랜치에서 작업을 완료한 후에 add, commit을 완료한다.
    (✨이건 작업하면서 기능을 추가하게 된다면 중간중간 해주기!! 나중에 작업한걸 보기 편하다😙)
git add .
git commit -m "feat: 하고 싶은 말"
  1. 원격 저장소로 브랜치를 push 한다. (작업한 브랜치에서 진행하면 된다)
git push origin 브랜치명

-> 이렇게 하고 Github에 들어가보면 push한 브랜치가 생긴 것을 확인할 수 있다!!

  1. GitHub으로 이동해서 PR 생성
  • GitHub 저장소로 이동하면 Compare & pull request 라는 초록색 버튼이 뜬다!
  • 클릭하면 PR 작성 페이지로 이동하며,
  • PR 제목과 설명을 작성한 뒤, 생성 버튼을 클릭하면 끝⭐️ (이때 다른 사람들이 쉽게 이해할 수 있도록 사진이나 gif를 넣으면 아주아주 도움이 많이 된다)

병합(Merge)하기

PR을 보낸 뒤, 리뷰가 끝나면 병합이 가능하다

(✨이렇게 하는걸 추천) 이때 머지하는 방법은 GitHub에서 Merge pull request라는 버튼을 눌러도 되며,

로컬터미널에서 main 브랜치로 이동한 후 진행할 수 있다.

git merge 브랜치명
git push origin main

이렇게 하고 충돌이 없다면 내가 한 작업이 main으로 잘 병합된 것이다!!😎

profile
거친세상에뛰어든건나니까암오케.

5개의 댓글

comment-user-thumbnail
2025년 4월 1일

git 쓰다가 헷갈리면 또 오겠습니다!

답글 달기
comment-user-thumbnail
2025년 4월 2일

저도 앞으로는 과제 중간중간 커밋 메세지를 남겨야겠어요!! 글 잘 보고 갑니다 ~~

답글 달기
comment-user-thumbnail
2025년 4월 2일

깃을 활용 할 일이 앞으로 많은데 협업 할때 참고하겠습니다!

답글 달기
comment-user-thumbnail
2025년 4월 2일

이렇게 정리해두면 나중에 또 볼 수 있어서 좋은 것 같아요! 짱짱

답글 달기
comment-user-thumbnail
2025년 4월 2일

git에 대해 간단하고도 핵심 정보만 정리되어있는 유익한 글인 것 같아요😽

답글 달기