개발자들이 협력할때 매우 유용한 사이트인 깃허브를 사용하기 위해 강민철 튜터님이 git 사용법에 대해 강의를 해주셨다.
이는 깃이 없는세상을 상상해보면 답이 나온다. 만약 깃이 없다면?
1. 변경내역 확인이 어렵다
2. 작업을 되돌리기 어렵다
3. 협력하기 어렵다.
이러한 여러가지 문제점을 느낀 Linus Torvalds가 버전을 좀 더 일목요연하게 관리해보자! 해서 탄생한것이 git이다.
버전이란?
유의미한 변화가 결과물로 나온 것
원격에서 깃으로 관리하는 프로젝트 호스팅 서비스를 뜻한다.
깃이 관리하는 세개의 공간
- 작업디렉터리 = 버전 관리의 대상이 위치하는 공간(.git이 있는 디렉터리)
- 스테이지 = 다음 버전이 될 후보가 올라가는 공간
- 저장소 = 버전이 만들어지고 관리되는 공간
버전이 만들어지는 과정
이 때, 작업 디렉터리에 있는걸 스테이지에 올리는걸 add한다라고 표현하고,
스테이지에서 저장소로 올리는걸 commit 이라고 한다.
( .git이 숨긴폴더 즉 작업디렉토리라고 볼 수 있다)
a.txt라는 파일을 만들었다.
새로 생성된 a.txt를 추적하지 못하는 모습이다.
이제서야 a.txt를 인식하는 모습
a.txt파일에 직접 변경사항을 주고 status 명령어로 상태를 체크해봤다
(b, c 파일도 만들고 똑같이 수정함) 수정됐다는 modified가 뜬다. 수정된 파일을 스테이지에 한번에 추가하고 싶을때 git add . 를 쓰면
잘 추가된게 보인다.