git 커밋 다루기

jake.log·2021년 1월 14일
0
  1. 커밋 히스토리 : git log

  2. 커밋 히스토리 깔끔하게 보기 : git log --pretty=oneline

  3. 특정 커밋에서 어떤 변경사항있었는지 확인 : git show 아이디

  4. git commit : - m 옵션 없어도 메시지를 남길 수 있다.
    복잡하고 긴 커밋 메시지를 쉽게 남길 수 있음

  5. 최신 커밋을 다시 수정하여 새로운 커밋으로 만들기.
    git add .
    git commit --amend

커밋 git에서 가장 핵심적인 개념으로, staging area의 현 상태를 그대로 하나의 버전으로 남기는 작업 또는 결과물이다.

커밋에는 크게 다음과 같은 3가지 정보가 있다.
1) 커밋을 한 사용자 아이디
2) 커밋한 날짜, 시간
3) 커밋 메시지

  • 커밋 메시지 제목과 상세 설명 사이는 한줄 비워두기.
  • 커밋 메시지 제목 뒤에 온점(.)은 붙이지 말기.
  • 제못의 첫 번째 알파벳은 대문자로 작성하기.
  • 제목은 명령조로 작성하기
  • 상세내용 : 왜 커밋을 했는지, 어떤 문제가 있었고, 해결했는지
  • 최대한 친절하게 작성하기.

하나의 커밋에는 하나의 수정사항이 들어가도록!

현재 프로젝트 디렉토리가 내부 전체코드를 실행할때 에러가 발생하지 않는 상태인 경우에만 커밋을 하기.

6.별명 만들기 : git alias.별명 '커맨드'
ex) git config alias.history 'log --pretty=oneline'

  1. 커밋 A 와 커밋 B 차이 확인하기 :git diff A아이디 B아이디(앞 4글자)

HEAD의 의미
어떤 커밋 하나를 가리킨
HEAD가 가리키는 커킷에 따라 working directory가 구성됨.

git reset --hard 아이디
HEAD, staging area, working directory 모두 과거의 커밋 상태로 돌아감.최신 커밋은 삭제 됨.
hard는 위험함!!

git reset --mixed 아이디
staging area를 과거의 특정 커밋의 내용과 똑같에 만든다.

git reset --soft 아이디
HEAD가 과거의 특정 커밋의 내용과 똑같에 만든다.

아이디를 쓰지 않는 상대적인 표현 방법도 있음.
git reset --hard HEAD^
git reset --hard HEAD~2

working directory - staging area - repository

[사진 출처: 코드잇(https://www.codeit.kr/)]

커밋에 태그 달기.
version1, version2 같은 태그를 달기 위함.

  • git tag 태그이름 커밋 아이디

태그 조회

  • git tag

태그와 연결된 commit보기

  • git show 태그 이름
profile
꾸준히!

0개의 댓글