Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- vertex sahder
- OpenGL
- 솔루션에프로젝트추가
- vertexarrayobject
- 정의
- 자동판결
- qtspim stack
- Qtspim
- vertex
- .sln
- shader
- 튜링기계
- multi process
- superbible
- fragment
- VAO
- visualstudip
- 파일생성 명령어
- git
- fetching
- 하나의 솔루션
- 시작
- interface block
- 프로젝트 여러개
- glDrawArrays
- 수리명제
- 멀티프로세스
- turingmachine
- glfw
- Tutorial
Archives
- Today
- Total
공사중
쉽게 정리한 Git 사용법 : git log의 다양한 옵션들 본문
지금까지 배웠던 git log에 대해서 유용한 옵션을 하나 더 배우겠습니다.
git log -p -2
이 명령어는 log를 보여주되 각 커밋의 diff결과를 보여줍니다. -2는 최근 두 개의 커밋에 대한 정보만 보여달라는 뜻입니다.
갯수가 아니라 시간을 기준으로 특정 시점 이후에 생성된 커밋만 보고 싶으면 이렇게 작성하면 됩니다.
git log --since=2.weeks git log --since="2 years 1 day 3 minutes ago"
또한 log에 대해서 어떤 파일이 수정됐는지, 얼마나 많은 파일들이 변경,추가,삭제 되었는지 요약해서 보여주는 옵션도 있습니다.
git log --stat
그리고 출력하는 내용을 어떻게 출력할지 정의하는 옵션도 있습니다.
git log --pretty=oneline git log --pretty=format:"%h - %an, %ar : %s"
위 두 개의 옵션에 대한 결과는 각각 아래와 같은 모습니다.
git log --pretty=oneline ca82a6dff817ec66f44342007202690a93763949 changed the version number 085bb3bcb608e1e8451d4b2432f8ecbe6306e7e7 removed unnecessary test a11bef06a3f659402fe7563abf99ad00de2209e6 first commit git log --pretty=format:"%h - %an, %ar : %s" ca82a6d - Scott Chacon, 6 years ago : changed the version number 085bb3b - Scott Chacon, 6 years ago : removed unnecessary test a11bef0 - Scott Chacon, 6 years ago : first commit
형식을 지정할 때 자주 쓰는 형식은 아래와 같습니다. 여기에서 자세한 reference를 볼 수 있고, 필요할 때 찾아보면 됩니다.
%H 커밋 해시 %h 짧은 길이 커밋 해시 %T 트리 해시 %t 짧은 길이 트리 해시 %P 부모 해시 %p 짧은 길이 부모 해시 %an 저자 이름 %ae 저자 메일 %ad 저자 시각 (형식은 –-date=옵션 참고 %ar 저자 상대적 시각 %cn 커미터 이름 %ce 커미터 메일 %cd 커미터 시각 %cr 커미터 상대적 시각 %s 요약
저자(%an)와 커미터(%cn)구분하는 것은 자료룰 수정한 사람과 직접 커밋을 한 사람이 다를 경우에 의미를 가집니다.
log를 찍을 때 그래프를 그릴 수 있습니다.
git log --graph
나중에 여러 개의 브런치에 대해서 배울 때 조금 더 직관적으로 이해할 수 있습니다.
이 외에 추가적인 옵션에 대한 설명입니다. 역시 한 번 읽어보고 존재를 알고있다가 필요할 때 찾아보면 됩니다.
-p 각 커밋에 적용된 패치를 보여준다. --stat 각 커밋에서 수정된 파일의 통계정보를 보여준다. --shortstat --stat 명령의 결과 중에서 수정한 파일, 추가된 라인, 삭제된 라인만 보여준다. --name-only 커밋 정보중에서 수정된 파일의 목록만 보여준다. --name-status 수정된 파일의 목록을 보여줄 뿐만 아니라 파일을 추가한 것인지, 수정한 것인지, 삭제한 것인지도 보여준다. --abbrev-commit 40자 짜리 SHA-1 체크섬을 전부 보여주는 것이 아니라 처음 몇 자만 보여준다. --relative-date 정확한 시간을 보여주는 것이 아니라 “2 weeks ago” 처럼 상대적인 형식으로 보여준다. --graph 브랜치와 머지 히스토리 정보까지 아스키 그래프로 보여준다. --pretty 지정한 형식으로 보여준다. 이 옵션에는 oneline, short, full, fuller, format이 있다. format은 원하는 형식으로 출력하고자 할 때 사용한다. --oneline --pretty=oneline --abbrev-commit 두 옵션을 함께 사용한 것과 같다. -(n) 최근 n 개의 커밋만 조회한다. --since, --after 명시한 날짜 이후의 커밋만 검색한다. --until, --before 명시한 날짜 이전의 커밋만 조회한다. --author 입력한 저자의 커밋만 보여준다. --committer 입력한 커미터의 커밋만 보여준다. --grep 커밋 메시지 안의 텍스트를 검색한다. -S 커밋 변경(추가/삭제) 내용 안의 텍스트를 검색한다.
결론적으로 실제로 사용하는 방법은 아래와 같습니다.
git log --pretty="%h - %s" --author=gitster --since="2008-10-01" \ --before="2008-11-01" --no-merges -- t/
git log가 어떤 것인지 알았으니 그때그때 필요한 방식을 찾아서 사용하면 됩니다.
'개발 | Git' 카테고리의 다른 글
쉽게 정리한 Git 사용법 : 원격 저장소 관리하기(push, fetch, pull, show, rename, remove) (1) | 2019.02.20 |
---|---|
쉽게 정리한 Git 사용법 : 수정하기(Staged->Working, discard changes) (0) | 2019.02.20 |
쉽게 정리한 Git 사용법 : status, commit 이해하기(+diff, vim, .gitignore, 삭제, 이름변경) (0) | 2019.02.19 |
Git 기본 에디터 변경하는 방법 (0) | 2019.02.19 |
쉽게 정리한 Git 사용법 : Github에서 데이터 가져오기 (0) | 2019.02.19 |