개요
형상관리 시스템에 대해 정확히, 구체적으로 이해한다.
Checklist
형상관리 시스템은 왜 나오게 되었을까요?
→ 협업툴의 일종.
→ 개발을 진행하면서 log 기록을 남겨 create, delete, update 등의 log 이력을 손쉽게 살펴볼 수 있다.
git은 어떤 형상관리 시스템이고 어떤 특징을 가지고 있을까요?
→ 분산형 형상관리 시스템.
→ 웹 형태/버전을 하나의 중앙저장소가 아닌, 각자 분산된 여러 지역저장소에 저장하여 버전 update를 관리하는 방식.
git과 GitHub은 어떻게 다를까요?
→ git은 지역저장소에서 버전관리가 이루어지는 도구, 방식.
→ github은 github company가 제공해주는 서버 및 클라우드를 이용하여 버전관리가 이루어지는 방식, 방법.
git의 clone/add/commit/push/pull/branch/stash 명령은 무엇이며 어떨 때 이용하나요? 그리고 어떻게 사용하나요?
→ git clone : github에 저장되어있는 저장소를(중앙/원격에서 관리 중인 모든 폴더와 디렉토리가 모여있는 곳) 복제한다.
※ git clone https://github.com/userName/storeName
→ git add : 지역적(유저PC)으로 version 관리를 하는 git에 finally updated version(코드에서의 새로 추가, 삭제 등 새롭게 변화한 내용 중 최종적으로 반영된 내용)을 기록한다.
→ git commit : 지역(유저PC)에서의 git에 finally updated version을 git에 저장하고, 중앙/원격저장소(github에서 운영하는 서버에 version을 저장하여 원격으로 관리하는 곳)에 해당 version을 반영하기 위한 준비를 한다.
→ git push : git에 저장되어있는 (최종적으로 수정/반영된) 내용을, 중앙저장소(github)에 기록하여 남긴다.
(※ 중앙관리소에서 관리 중인 version은 branch를 통해 분할관리가 가능하다).
→ git pull : 중앙/원격저장소에서 관리하고 있는 version을 유저PC의 폴더로 옮겨오고, 그 내용을 반영한다.
(※ 지역저장소에서 관리 중인 version보다 상위일 경우 merge(version 상향)한다.)
→ git branch : 독자적으로 version control 및 분할관리를 위해 주 저장소와 함께 운영하는 부 저장소들을 운영한다.
※ git branch
/ 현재 위치한 저장소
※ git branch branch_name
/ 원격 저장소 branch 추가
※ git checkout branch_name
/ 해당 branch로의 이동
→ git fetch : 중앙/원격저장소에서 관리하고 있는 version을 유저PC의 폴더로 옮겨오기만 한다(내용을 반영(merge)하지는 않는다).
간략히