본문 바로가기
Git using(깃 사용하기)

깃(git) 커밋 - add, commit

by 코딩하는 동현😎 2022. 4. 14.

중요 명령어 요약!

('git 기초' 포스트를 보고 기초 개념을 알아야 이해할 수 있습니다!)

 

git add 파일이름  : 특정 파일을 스테이지에 올리는 명령어

git add .  :  현재 폴더에 모든 파일을 track 시켜주고 stage 시켜주기 위한 명령어 입니다.

 

수정된 파일이 있으면 무조건 add 시켜주고 커밋해야합니다!

git status로 수정된 파일이 있는지 수시로 확인

 

"" 필수!!

git commit -m "커밋이름" : stage에 올라간 파일을 커밋

git commit -am "커밋이름" : 수정돼서 unstaged 된 파일을 다시 stage 시켜주면서 동시에 커밋하는 명령어

주의 할것은 git commit -am 을 한다고 해서 새로 생성된 파일을 add 시켜주진 않습니다. 이미 tracked된 파일만 다시 staged 시켜줍니다.

 

 

 

파일 관리 방법

보통 우리는 파일을 최종 , 최종수정 , 진짜진짜최종처럼 변경을 할때 파일을 복사합니다.

근데 내용이 중복되기 때문에 용량도 많이 차지하고 비효율적입니다.

 

깃의 커밋을 이용하면 새로 변경된 부분만 추출해서 저장합니다.

파일 이름을 변경하지 않고도 동일한 파일 이름으로 커밋간 이동해서 하나로 관리가 가능합니다.

보통 커밋이름은 기존 파일과 무엇이 달라졌는지 , 입출력 형태가 달라졌는지 등등을 자유롭게 기록합니다.

 

 

실습해보기!

실습을 위해 우선 폴더를 만들어주는데, 그냥 폴더 만들어도 되고, 터미널에 mkdir '폴더이름' 으로 만들어도 됩니다.

폴더 생성후, 그 폴더 안으로 들어가서 git init으로 git초기화(깃 저장소로 설정)를 해줍니다.

그 폴더안에 index.htm을 이름으로 간단한 html파일을 하나 작성합니다. vscode나 sublime Text나 아무 에디터로!

새로운 파일이 들어왔는데, tracked 돼있지 않죠?

tracked 되는 동시에 stage에 추가됩니다.

스테이지(add) 성공!

 

 

 

 

 

  • 파일을 add한 후 커밋하지 않고 바로 스테이지에서 삭제하는 명령어는(add 취소) 
    • git rm --cached '파일이름'
  • 파일 이름을 변경 시켜주는 명령어는
    • git mv '기존파일이름' '새로운 이름'
    • 그러나 이름 바꿔주면 기존파일이 삭제처리되므로 다시 add 해줘야합니다!

 

 

 

  

HEAD  (마지막 커밋 위치를 가리키는 포인터)

HEAD는 최종적인 커밋 작업의 위치를 가리키는 포인터 입니다.

깃을 처음설치하고 커밋할땐 HEAD 포인터가 없고, 최소 한번 커밋해야 존재합니다.

HEAD는 커밋될때마다 최신으로 한단계식 이동합니다.

 

 

커밋하기!

"" 필수!!

git commit -m "커밋이름" : stage에 올라간 파일을 커밋

git commit -am "커밋이름" : 수정돼서 unstaged 된 파일을 다시 stage 시켜주면서 동시에 커밋하는 명령어

항상 미리 add 해주고 status를 상태를 보는 습관이 필요합니다.

커밋해주고 git status를 쳐보면

 

최신 상태로 정리가 됩니다.

 

 

 

 

커밋내역 출력하기

git log : 깃의 커밋 목록을 확인할수 있습니다. (vi편집기에서 q를 입력해서 나가기)

git log 파일이름 : 한 파일의 내역을 보기

git log --pretty=short : 로그를 출력할때 깔끔하게 출력함

'commit : '부터 나오는 문자들이 커밋 ID입니다 (맨 앞 7자리만 복사해도됩니다)

 

커밋의 상세정보 보기

git show 커밋ID

git diff HEAD : 마지막 커밋과 워킹디렉토리 비교

반응형

댓글