컴퓨터 공부/䷇ Git

[Github/깃허브] Git에서 커밋이란? commit 을 넘나드는 파일상태!

letzgorats 2023. 11. 22. 16:24

👉 Git에서 커밋이란?

    - 변경 사항의 모음(X)이 아닌 하나의 최종 코드 모음(O) 이다!

    - 다만, 기존 커밋과 비교해서 변경된 파일이 아니면, "변경되지 않았다"고만 저장해서 용량이 무겁지 않다! 

 

SVN은 바로 이전 커밋과의 변경사항만 저장 

    - 그래서 커밋당 용량은 더 가볍지만 한 버전을 보려면 맨 처음 커밋부터 계산해야 한다. -> 속도 느림

(증권사에서의 실무를 기억해보자!)

 

[1주차] 여의도 증권사 실무

12.19 (월) - 오늘은 여의도 증권사에서의 첫 출근날이었다. 8시까지 출근이지만, 오늘 새벽에 카타르 월드컵 결승을 하는 바람에 잠을 거의 선잠으로 2시간 정도 밖에 못 잤다. 정상 컨디션으로 점

letzgorats.tistory.com

    - 반면, Git은 바로 이전 커밋만 보면 된다 -> 속도 빠름

 

 


Git의 원리는 아래와 같습니다.

 

0. 맨 처음 로컬 저장소를 만들었을 때

 

파일들을 처음 추가를 했으니까 일단 상태가 '추적 안됨'이라는 상태입니다.

 

1. 두 파일 스테이지에 올리기 - git add

 

add를 하면 stage에 올라가게 되고, 그 파일들은 'stage됨' 상태입니다.

 

2. 스테이지 사진 찍어 남기기 : 커밋(commit)

 

커밋을 하면, 커밋된 파일들은 '수정 없음'으로 다시 상태가 돌아가게 됩니다.

3. 커밋을 원격 저장소에 올리기 : 푸시(push)

 

커밋을 한 후에는 적절한 커밋 메시지와 함께 push를 진행합니다. 원격 저장소에 해당 파일들이 올라가게 됩니다.

4. 알루코딩.txt 를 수정하고 새로운 파일 letzgorats.txt 파일을 추가

 

수정한 파일인 '알루코딩.txt' 파일은 '수정함'상태가 되고 새로 추가한 파일인 'letzgorats.txt' 파일은 '추적안됨'상태가 됩니다.

5. 알루코딩.txt 를 수정하고 새로운 파일 letzgorats.txt 파일을 스테이지에 올리기 : git add

여기서 add를 또 하면, 두 파일 모두 'staged' 상태로 바뀝니다.

6. 스테이지 사진 찍어 남기기 : 커밋(commit)

 

이걸 또 적절한 커밋메시지와 함께 커밋을 하면 두 파일들이 모두 '수정없음'상태로 돌아가게 됩니다.

 

7.  커밋된 파일들을 원격 저장소에 올리기: 푸시(push)


요약하자면, 아래와 같습니다!

  1. Git으로 추적하는 파일의 4가지 상태
    • untracked(추적 안됨)
    • tracked(추적됨) - (수정 없음, 수정함, 스테이지됨)
  2. 작업 공간(Working directory)에 있는 "수정함", "추적 안됨" 파일을 스테이지로 올려 "스테이지됨"으로 변경한다.
  3. 커밋을 하면, "수정 없음" 상태로 돌아가서 파일을 다시 수정할 수 있다.

오늘은 Git의 기본중의 기본을 알아봤습니다!

반응형