Column — Glossary
GitHub 용어 사전
Git과 GitHub를 처음 접할 때 알아야 할 핵심 용어들.
기본 정의와 일상 비유를 함께 정리했습니다.
용어 관계도
모든 비유는 조별과제로 통일했습니다. GitHub = 조별과제 공유 폴더라고 생각하세요.
내 작업을 팀에 공유하기까지
조별과제에서 내 파트를 쓰고 → 제출할 부분을 고르고 → 완성본으로 저장하고 → 공유 폴더에 올리는 과정
팀 협업은 이렇게 돌아갑니다
조별과제와 똑같습니다. 내 파트를 따로 쓰고 → 조장에게 제출 → 피드백 → 최종본에 합침
내 컴퓨터와 GitHub는 어떻게 연결될까?
조별과제 공유 폴더(Google Drive)와 같습니다. 내 파일을 올리고, 다른 사람 파일을 받는 것이 전부
다른 팀의 프로젝트에 기여하기
다른 조의 발표 자료가 좋아서 → 내 사본을 만들어 개선하고 → "이렇게 바꾸면 어때요?" 제안하는 과정
내 계정에 사본으로 가져오기
수정용 작업 공간(브랜치) 생성
저장(커밋) 후 내 사본에 올리기(push)
"이렇게 바꾸면 더 좋지 않을까요?" 제안
내 개선이 원본에 반영됨
내가 고친 부분을 다른 조원도 다르게 고쳤을 때 발생. 합칠 때 "둘 중 어느 버전을 쓸래?"하고 물어봅니다. 직접 골라주면 해결.
기본 개념
7개 용어파일의 변경 이력을 추적하고 관리하는 분산 버전 관리 시스템. 코드의 히스토리를 기록하고, 여러 사람이 동시에 작업할 수 있게 해준다.
Git 저장소를 온라인에서 호스팅하고, 협업 기능(이슈, PR, 코드 리뷰 등)을 제공하는 웹 플랫폼.
프로젝트의 모든 파일과 변경 이력이 저장되는 공간. 줄여서 "repo"라고 부른다.
파일의 변경 사항을 저장소에 기록하는 행위. 각 커밋에는 메시지를 남겨 무엇을 바꿨는지 설명한다.
독립적으로 작업할 수 있는 코드의 분기점. 원본(main)에서 뻗어 나와 별도로 작업한 뒤 다시 합칠 수 있다.
프로젝트의 기본 브랜치. 최종 완성된 코드가 모이는 곳. 현재는 main이 표준 이름이다.
프로젝트의 소개 문서. 레포지토리에 들어가면 가장 먼저 보이는 파일.
협업
6개 용어내가 작업한 브랜치의 변경 사항을 메인 브랜치에 합쳐달라고 요청하는 것. 코드 리뷰를 받고 승인되면 머지된다.
두 개의 브랜치를 하나로 합치는 것. PR이 승인되면 머지를 통해 메인 브랜치에 반영된다.
두 사람이 같은 파일의 같은 부분을 다르게 수정했을 때 발생. 사람이 직접 어떤 코드를 유지할지 결정해야 한다.
다른 사람이 작성한 코드를 검토하고 피드백을 주는 과정. PR에서 이루어지며 버그를 사전에 잡는다.
버그 리포트, 기능 요청, 할 일 등을 기록하는 게시판 같은 기능.
이슈나 PR에 지정된 담당자. "이 작업은 누가 책임지고 처리한다"를 명시하는 역할.
동기화
5개 용어원격 저장소(GitHub)의 프로젝트를 내 컴퓨터로 통째로 복사하는 것.
내 컴퓨터의 커밋을 원격 저장소(GitHub)에 업로드하는 것.
원격 저장소의 최신 변경 사항을 내 컴퓨터로 가져와 합치는 것.
원격 저장소의 최신 정보를 가져오되, 내 코드에는 합치지 않는 것.
GitHub 같은 서버에 있는 원격 저장소. 보통 "origin"이라는 이름으로 연결된다.
프로젝트 관리
5개 용어다른 사람의 레포지토리를 내 계정으로 복사하는 것. 원본에 영향 없이 자유롭게 수정할 수 있다.
마음에 드는 프로젝트에 "좋아요"를 누르는 것. 북마크 기능도 겸하며 인기 지표가 된다.
특정 레포지토리의 활동에 대한 알림을 받도록 구독하는 것.
프로젝트의 특정 버전을 공식적으로 배포하는 것.
특정 커밋에 이름표를 붙이는 것. 주로 버전 번호(v1.0, v2.1)를 표시할 때 사용.
고급 기능
7개 용어Git이 추적하지 않을 파일 목록을 지정하는 파일. 비밀번호, 환경 설정 등 공유하면 안 되는 파일을 여기에 적는다.
.env
*.log
작업 중인 변경 사항을 임시로 저장해두는 것. 브랜치를 바꿔야 할 때 유용.
브랜치의 시작점을 변경하여 커밋 히스토리를 깔끔하게 정리하는 것.
다른 브랜치의 특정 커밋 하나만 골라서 현재 브랜치에 적용하는 것.
코드를 push하면 자동으로 테스트, 빌드, 배포 등을 실행해주는 자동화 도구.
레포지토리의 코드를 무료로 웹사이트로 호스팅해주는 기능.
코드 조각이나 메모를 간단히 공유할 수 있는 미니 저장소.