
0. 브랜치 (Branch)
: 협업을 위해 버전 관리 시스템에선 브랜치라는 기능을 제공하는데 기존 마스터 소스코드를 복제하여 각 작업자만의 작업 환경을 만들어준다. 쉽게 말하면 평행세계처럼 병렬로 같은 프로젝트를 작업할 수 있는 환경을 만들어주는 것이다. 버전 관리 시스템 사용자들은 어떠한 브랜치라도 다른 브랜치로 분기시킬 수 있다.1. 커밋 (Commit)
: 변경된 소스코드의 "그 상태"를 저장해 준다. 사소한 변경이라도 커밋을 습관화해두면 언제라도 "이전 상태"로 되돌아갈 수 있기때문에 버전 관리에서 가장 중요한 기능이되겠다.
※푸시를 안하면 로컬 저장소에만 저장됨!2. 푸시 (Push)
: 로컬 저장소 → 원격 저장소로 커밋된 내용이 올라감!3. 풀 (Pull)
: 원격 저장소에 저장된 내용 → 로컬 저장소 로 내려받아짐!4. 병합
: 다른 브랜치와 현재 브랜치를 병합하는 기능

현재 우리 팀플의 원격 저장소의 브랜치들이다.
새로운 브랜치를 만드려면 두가지 방법이 있다.

프로젝트에 변경사항이 생긴 파일이 스테이지에 올라가지 않은 파일이라고 나오는데
커밋할 내용의 파일을 스테이지에 올린 후

변경내용에 대한 간단한 메모를 남기고,
원격 저장소에 즉시 push 할 것인지를 체크하고 '커밋' 버튼을 누르면 된다.
만약 원격 저장소에 즉시 push를 체크해제를 한 후 커밋을 하게 되면 push를 하기 전 까지 그 커밋은 로컬 저장소에만 존재하게된다.

위에서 즉시 푸시를 하였기때문에 로컬 저장소(kdb)와 원격 저장소(origin/kdb)의 상태가 모두 갱신된 모습이다.
체크를 해제하고 커밋을 했다면 원격 저장소(origin/kdb)의 태그 위치는 Push하기 전까지는 아래 커밋에 있을 것이다. 이때, push를 해주면 위 그림과 같은 상태가 된다.

푸시할 새로운 커밋이 있다면 변경사항이 있음을 알리는 뱃지가 생기게 되고

!!푸시할 브랜치만 선택후!! 푸시를 진행하면 된다.
다른 작업자의 브랜치에 푸시하게되면 참사니 꼭 확인하자

가져오려는 장소(로컬 저장소) 위치를 확인해 주고
가져오기 위한 원격 브랜치를 선택하여 pull해주면 된다.

※ 마스터 브랜치로의 병합은 주의가 필요함!
이제 kdb 브랜치에서 작업한 내용을 master 브랜치로 병합하고자한다.
이때 작업 브랜치를 master로 바꾸어 주고 병합을 눌러주면

병합할 커밋을 선택 한 후 '확인'을 누르게 되면 마스터 브랜치(로컬)**** 에 병합이 된다.
이제 마스터 브랜치(원격)에도 이 내용을 적용하고 싶다면 2. push를 하여 적용시키면 된다.