GIT

git원리 (3가지 영역)

25G 2021. 12. 9. 21:28

공부를 할 때는 실무 스킬보다 원리를 파악하는 것이 중요하다.

 

git == DVCS(분산 버전 관리 시스템)

 

git의 세가지 영역

작업 폴더에서 git init을 통해서 작업 영역을 만들면 그 작업 영역에 대한 변경 감지를 시작한다.

변경 감지를 하다가 변경이 감지가 됐을 때 그 변경을  git add. 를통해서 저장을 하는데 이때 인데스 영역에서 tree형태로 해시 코드를 관리한다.

그리고 그 상태를 영구히 저장을 하고 싶다 즉 버전을 남기고 싶을 때 commit을 통해서 해더 영역에 영구히 저장을 할 수 있게 된다는 것이다.

이렇게만 생각하면 단순히 버전 관리시스템이라고 생각할 수 있는데 git은 버전이 늘어갈수록 add. 를 통한 인덱스 영역에 관리하는 버전이 많아질 수 록 강점이 드러난다.

위 그림과 같이 tree형태로 인덱스 영역에 저장이 되니까 v1영역으로 돌아가고 싶을 때는 폴더 1 영역만 가지고 와서 그 history를 복사하기만 하면 v1의 영역으로 넘어갈 수 있다.

 

그리고 또 하나의 git의 강점은 위 인덱스 영역도 자체적으로 백업이 되기 때문에 작업 영역에 어떤 일이 생기더라도 어떠한 commit시점의 버전으로 돌아갈 수 있다는 것이다.

 

프로젝트를 경험해 보면서 위 강점이 얼마나 고마운지 알게 됐습니다.....ㅎㅎ... 

'GIT' 카테고리의 다른 글

github란  (0) 2022.12.21