Repository 란?

프로젝트 소스 코드, 파일, 히스토리 등을 저장하고 관리하는 공간으로 로컬 저장소와 원격 저장소로 나눌 수 있으며, GitHub 와 같은 플랫폼에서 관리합니다.

Commit 이란?

저장소에 변경 사항을 기록하는 행위로 각 커밋은 고유의 해시 값을 가지고, 변경된 파일과 그 내용, 작성자, 날짜 등의 정보를 포함 합니다.

merge 란?

Merge(병합)은 두 개의 분기(branch)를 하나로 합치는 작업 주로 기능 개발이 완료된 브랜치를 메인 브랜치에 병합할 때 사용

Push 란?

Push(푸시) 로컬 저장소의 커밋된 변경 사항을 원격 저장소에 반영하는 작업입니다. 이를 통해 팀원들과 변경 사항을 공유할 수 있습니다.

Pull 란?

Pull은 원격 저장소의 변경 사항을 로컬 저장소로 가져오는 작업입니다. git pull 명령어는 fetchmerge를 동시에 수행합니다.

rebase 란?

브랜치의 시작점을 변경하여 커밋 히스토리를 다시 작성하는 작업입니다. 이를 통해 깔끔한 커밋 히스토리를 유지할 수 있습니다. 리베이스는 특정 브랜치가 다른 브랜치로부터 갈라져 나온 시점을 변경합니다.

branch 란?

독립적으로 작업을 진행할 수 있도록 만들어진 별도의 작업 공간, 기능 개발, 버그 수정 등을 브랜치에서 작업하고, 완료된 후 메인 브랜치에 병합합니다.

Tag 란?

  • 특정 시점을 키워드로 저장하고 싶을 때
  • 커밋에 버전 정보를 붙이고자 할 때
  • 특정 커밋을 참조하기 위해 붙이는 이름표, 릴리즈 - 버전과 같이 중요한 시점에 태그를 사용합니다.

submodule 이란?

프로젝트를 수행할 때 외부에서 개발한 라이브러리라던가 내부 여러 프로잭트에서 공통으로 사용하는 라이브러리와 같은 다른 프로젝트를 사용해야하는 경우가 있다. Git Submodule은 Git 저장소 안에 다른 Git 저장소를 디렉토리로 분리해 넣으며 이러한 문제를 해결해준다. 즉, 메인(부모) 레포지토리 하위에 공통으로 사용하는 프로젝트를 자식 레포지토리를 두고 관리하며 문제를 해결하는 방법이다.