본문 바로가기

개인공부

GIT ( git의 원리)

반응형

원리를 공부해야 훨씬더 빠르게 습득하고 새로운 것을 창조하고 학습하는 능력이 오른다.

 

 

어떠한 git 명령어를 내렷을때 .git이라는 파일에는 어떠한 일이 일어나는가??

 

index 파일과 object 파일에 저장된다.

 

f1.txt 에 a를 등록하게 되면 파일의 이름은 index에 담기되고 파일의 내용은 object에 저장된다.

 

index는 이름을 저장하고 여러파일들이 저장된다.

 

object는에는 변경된 파일 하나하나의 정보가 저장된다 . 이때 변경된 내용이 똑같으면

 

같은 object 파일에 저장된다. !!

 

깃은 파일의 이름이 달라도 내용이 똑같으면 같은 Object를 가리키고 있다.

어마어마한 중복을 제거할 수 있다.

 

 

Object 파일명의 원리

 

SHA1 사이트에서 hash를 이용해서 text를 일정한 hash 소스를 얻을 수 있다.

 

hash코드를 이용해서 나온결과로 특정한 소스는 -> 특정한 파일이름에 저장하게 한다.

 

 

 

Commit 의 원리

commit 안에는 누가 커밋을 했는지와 object가 링크가 되어있다.

 

 

커밋에는 주요한 정보가 두개있다.

 

parrent 이전 커밋이 누구인가

 

커밋이 일어난 시점에 파일의 이름 파일이 담고있는 정보를 Tree에 저장한다.

 

Tree각각에는 파일의 오브젝트가 각각 link 되어있다.

 

솔직히 너무어렵다... 나중에 천천히 뜯어봐야 할것 같다..

 

오브젝트파일은 파일을 내용을 담는 blod, 파일명과 그내용에 대한 blod를 담는 tree, 또하는 commit 세가지 형태를 가진다.

Status의 원리

index, object (최신파일) 의 차이를 비교하면 commit 할 애들을 비교할수있다.

 

가장 최신 commit의 tree와 index와 내용이 일치한다면 commit 할것이 없는것..

 

만약 다르다면 commit할것이 잇는 것

 

 

 

반응형

'개인공부' 카테고리의 다른 글

HTML 기본  (0) 2020.03.10
HTML5 개념  (0) 2020.03.09
GIT 배우기  (0) 2020.01.17
Dialogflow,ngrok 연동  (0) 2020.01.15
ngrok를 사용해서 내부ip와 외부ip 매칭시키기기  (0) 2020.01.15