Git Commit: details & reset

이다연·2021년 3월 11일
0

Git & GitHub

목록 보기
4/8

git log

"커밋 히스토리"
가장 위가 최근
커밋 아이디 (==커밋해시)

git log

커밋 메시지 한줄로 보기
git log --pretty=oneline

git show

커밋 디테일보기
git show id (앞에 네자리수 정도 적어주면 됨)
---이전
+++현재

m 옵션 없이 커밋메시지 남기기

vim 이용
복잡하고 긴 메시지 쉽게 남길수 있음

git commit-amend

최신 커밋 수정해서 다시 새로운 커밋으로 만들기
git commit --amend
I 입력보드
esc
:wq

커밋 메시지 작성 가이드라인

제목과 상세설명사이 한줄 비우기

(2) 커밋 메시지의 제목 뒤에 온점(.)을 붙이지 마세요.

(3) 커밋 메시지의 제목의 첫 번째 알파벳은 대문자로 작성하세요.

(4) 커밋 메시지의 제목은 명령조로 작성하세요.(Fix it / Fixed it / Fixes it)

(5) 커밋의 상세 내용에는 이런 걸 적으면 좋습니다.

왜 커밋을 했는지
어떤 문제가 있었고
적용한 해결책이 어떤 효과를 가지는지

(6) 다른 사람들이 자신의 코드를 바로 이해할 수 있다고 가정하지 말고 최대한 친절하게 작성하세요.

커밋 가이드라인

(1) 하나의 커밋에는 하나의 수정사항, 하나의 이슈(issue)를 해결한 내용만 남기도록 하세요. 다양하게 수정을 하고나서 하나의 커밋으로 남기는 것은 좋지 않습니다. 하나의 커밋이 하나의 사실만을 갖고 있어야 나중에 이해하기 쉽습니다.

작은 단위로. 단위의 기준

(2) 현재 프로젝트 디렉토리의 상태가 그 내부의 전체 코드를 실행했을 때 에러가 발생하지 않는 상태인 경우에만 커밋을 하도록 하세요. 나중에 동료 개발자가 특정 커밋의 코드로 실행했을 때 에러가 발생한다면 혼란을 줄 수 있습니다.

나중에 다시 봤을 때 이해하는데 어려움이 없도록
다른 동료 개발자와 협업하는 데 방해가 되지 않도록

git aliasing

긴 커밋 옵션을 별명을 붙여 짧게 사용

git config alias.history 'log --pretty=oneline'

git diff

두 커밋간의 차이 보기

git diff 이전ID 이후ID

HEAD 의 의미

어떤 커밋 하나를 가리킴: 보통 가장 최근에 한 커밋
왜 필요?

헤드는 어떤 커밋을 하나를 가리키고 HEAD가 가리키는 커밋에 따라 working directory/working tree 이 구성된다.

git reset

과거 커밋으로 아예 돌아가고 싶을 때

이전 커밋으로 reset하기
git reset --hard 커밋 ID 하면
하면 head가 가리키는 워킹 디렉토리도 바뀐다.

cat manage.py 파일 내부 볼수 있음

TBC

profile
Dayeon Lee | Django & Python Web Developer

0개의 댓글