Git으로 관리되는 폴더를 Git repository라고 하고 소스코드 저장소의 역할을 한다.
◐ Remote Repository
온라인상의 저장소로 원격 저장소라고 한다.
소유권에 따라 내 원격 저장소와
다른 소유권자의 원격 저장소로 분리된다.
◐ Local Repository
내 컴퓨터 내의 저장소를 말한다.
두 작업 모두 소스 코드를 '가져오는' 작업이다. 하지만 차이점이 있는데!
◑ Fork :
내 소유권이 아닌 오픈소스 Remote Repository를 내 소유의 Remote Repository로 가져오는 작업
◑ Clone :
내 소유의 Remote Repository에서 Local repository로 가져오는 작업
◑ staging Area :
Git의 관리하에 있는 영역으로
commit 작업이 이루어지는 공간이다.
commit 하기 전에 내용을 기록하는 장소이다.
◑ Commit :
특정 시점에 생성된 백업 복사본인
snapshot을 만드는 작업이다.
repository에서 point로 구현된다.
#commit messeage :
파일의 변경 이력을 기록하는 메시지이다. 누구나 쉽게 알아볼 수 있도록 적어야 한다.
조금 단순하게 표현하자면 Push는 내가 작업한 것을 보내는것
Pull은 타인이 작업한 것을 받아오는 것으로 이해해도 좋다.
◑ Push :
Local repository에서 변경한 소스코드를
Commit을 통해 저장 후
Remote repository에 올려주는 작업이다.
◑ Pull :
Remote repository에서 변경한 소스코드를 Commit을 통해 저장 후
Local repository로 가져오는 작업이다.
브랜치란 독립적으로 어떤 작업을
진행하기 위한 개념입니다.
'작업 단위'를 세분화 하여 작업의 효율을 높이고
발생 가능한 문제들에 대한
해결 능력을 높이기 위해 사용합니다.
■ 통합 브랜치(Intergration Branch)
배포될 소스 코드가 기록되는 브랜치.
Github Repository를 생성하게 되면
기본적으로 main 브랜치가 생깁니다.
(기존 Repository의 경우 master로 되어 있는 곳도 많습니다.)
해당 프로젝트의 모든 기능이
정상적으로 작동하는 상태의 소스코드가 담겨 있습니다.
■ 피처 브랜치(Feature Branch)
기능 추가, 버그 수정과 같이 단위 작업을 위한 브랜치.
통합 브랜치로부터 만들어내며,
피처 브랜치에서 하나의 작업이 완료되면
다시 통합 브랜치에 병합하는 방식으로 진행됩니다.
토픽 브랜치라고도 합니다.