소프트웨어의 변경 사항을 체계적으로 추적하고 통제하는 것
개발 중 발생하는 모든 산출물들이 변경됨으로써
점차 변해가는 소프트웨어 형상을 체계적으로 관리하고 유지하는 시스템으로,
개발 산출물들의 버전 관리 및 변경 내역 조회 가능
프로젝트(소스 코드)를 저장하고 이력을 관리하는 저장소 (Repository)
원하는 시점에 소스 코드를 저장하고,
저장 시점으로 돌아가는 기능을 제공하여
프로젝트의 버전을 관리할 수 있음
여러 PC에서 소스 코드를 저장하거나,
작성한 내용을 하나로 병합(Merge)할 수 있음
코드 저장소 Git을 웹으로 이용할 수 있게 만든 원격 저장소 (Remote Repository)
하나의 저장소(Repository) 내에 여러 버전을 만들어 작업할 수 있는 방법 (저장소 분리)
협업 진행 시 원본(Master Branch) 코드를 각자 분리된 작업 영역(Branch)로 가져가
서로 다른 작업을 진행하고, 코드 수정 후 Master Branch에 Pull Request를 보내어 코드 병합