git log
: 커밋 히스토리 보기(*최신순으로 나열)
git log --pretty=oneline
: --pretty 옵션을 사용하면, 커밋 히스토리를 바양한 방식으로 출력할 수 있음. --pretty 옵션에 oneliine이라는 값을 주면 커밋 하나당 한 줄씩 출력함.(*다른 값도 가능!)
git config alias.[별명] [커맨드]
: 길이가 긴 커맨드에 별명을 붙여서 이후로 별명으로 해당 커맨드를 실행할 수 있도록 설정
예) git log --pretty=oneline을 git history라는 별명으로 aliasing하기
git config alias.history 'log --pretty=oneline'
git show [커밋아이디 4자리]
: 특정 커밋의 상세 변경 내용 확인
git commit 만 입력 시, (기본 설정된) vim 텍스트 에디터가 실행됨(mac 기준)
i(입력 모드) -> [커밋 메시지 입력] -> [esc] -> :wq -> 자동으로 커밋되면서 입력한 '커밋 메시지'가 저장됨
-m 옵션 없이 git commit만으로 텍스트 에디터에 커밋 메시지 남기기
: 복잡하고 긴 커밋 메시지를 쉽게 남길 수 있다
git commit --amend
: 깃에서 최신 커밋을 수정하여 새로운 커밋으로 만들 수 있음
git config alias.history 'log --pretty=oneline'
git diff [비교 기준 커밋 아이디] [비교 커밋 아이디]
: 두 커밋 사이의 변화 알아보기
git diff 506d 53df
HEAD
: 보통 가장 최근에 한 커밋을 가리킴(매번 더 새로운 커밋을 가리킴), HEAD가 가리키는 커밋에 따라 working directory 구성
git reset
: HEAD가 과거의 커밋을 가리키게 할 수 있고, working directory의 내용도 과거 커밋의 모습으로 돌아가게 함(*옵션 생략 시, --mixed 옵션이 적용됨)
- HEAD가 과거의 특정 커밋을 가리키도록 한다. --soft
- staging area를 과거의 특정 커밋의 내용과 똑같게 만든다. --mixed (1+2)
- working directory를 과거의 특정 커밋의 내용과 똑같게 만든다. --hard (1+2+3)
1. git rest [옵션] [커밋 아이디]
2. git reset HEAD~x: 현재 HEAD가 가리키는 커밋보다 x단계 전에 있는 커밋
eg.
1) git reset --hard 7f3d: 특정 커밋으로 reset
2) git reset --hard HEAD^: 현재 HEAD가 가리키고 있는 커밋의 바로 이전 커밋
3) get reset --haard HEAD~2: 현재 HEAD가 가리키는 커밋보다 2단계 전에 있는 커밋
git tag [태그 이름] [커밋 아이디]
- git tag: 추가한 태그 확인
- git show [태그 이름]: 태그에 연결된 커밋 정보 확인
- git tag -d [지울 태그명]: 생성된 tag 삭제