커밋 그래프
브랜치, 머지, 옥토퍼스 머지를 제대로 그려 줘요. 밝은 테마에서도 어두운 테마에서도 마찬가지고요. 렌더링은 화면 단위로만 이뤄지기 때문에, 커밋이 십만 개인 저장소도 백 개짜리 저장소처럼 매끄럽게 스크롤돼요.
![]() |
![]() |
이동하기
- ↑ ↓ (또는 j k)로 선택을 옮겨요.
- ⌘/Ctrl-클릭으로 커밋을 다중 선택에 넣고 뺄 수 있고, ⇧-클릭은 범위를 잡아요. 여러 개를 선택한 채 우클릭하면 현재 브랜치로 체리픽하거나, 연속된 구간을 스쿼시하거나, 하나로 합친 패치를 내보내거나, SHA를 복사할 수 있어요.
- 가장 최근 페치나 풀로 들어온 커밋에는 새 커밋이라는 표시가 붙어요. 아직 체크아웃된 브랜치에 들어오지 않은 커밋은 풀로 가져올 때까지 살짝 반투명하게 남아요.
- 커밋을 우클릭하면 수정, 되돌리기, 커밋으로 리셋…, GitHub에서 보기가 나오고, 체크아웃, 체리픽, 리버트, 브랜치, 태그, 복사도 함께 있어요. 안전하지 않은 동작은 사라지지 않고 비활성화돼요.
원하는 것만 보기
그래프 포커스는 히스토리를 얼마나 그릴지 정해요. 설정 → 테마 → 그래프, 또는 그래프 헤더의 톱니바퀴 메뉴에서 바꿉니다. 전체는 전부 그리고, 선형 히스토리(first-parent)는 줄기만 남기고, 병합된 브랜치 숨기기는 줄기와 아직 병합되지 않은 브랜치를 남기고, 솔로 모드는 내 브랜치, 즐겨찾기 브랜치, 기본 브랜치만 남겨요.
이미 불러온 로그 범위만 걸러냅니다. 병합된 브랜치 숨기기는 "현재 브랜치에 이미 포함됐는가"라는 git 자신의 답을 따르므로 브랜치를 바꾸면 숨겨지는 것도 달라져요. 또 태그나 알아보지 못하는 ref가 아직 가리키는 커밋은 남깁니다 — 삭제된 브랜치가 남기는 것이 바로 그것이니까요. 선형 히스토리와 솔로 모드는 더 거칠어서, 숨긴 커밋에 달린 태그나 스태시는 함께 사라집니다.
경로로 필터: 파일이나 폴더를 우클릭 → 이 경로로 그래프 필터를 고르면, 그 경로를 건드린 커밋만 남아요.

- 열: 브랜치, 메시지, 작성자, 날짜, SHA, 서명, 배포 열을 보이거나 숨기고, 크기를 바꾸고, 순서를 바꿀 수 있어요.
- 스타일: 설정 → 테마 → 그래프 — 레인 팔레트(기본 8종, 사용자 정의, 또는 AI 생성), 모서리 스타일, 행 밀도, 선 두께를 고를 수 있고, 미니 그래프로 즉시 미리 볼 수 있어요.

스태시가 앉는 자리
스태시는 자기 행으로 그려지고, 찍어 둔 커밋에서 점선 스퍼로 매달려 줄기를 밀지 않아요. 들어가는 곳은 그 부모 커밋 바로 위 행이지, 자기 시각이 차지했을 칸이 아니에요.
표시는 점선 테두리 안의 보관 상자예요. 스태시 목록, 명령 팔레트, 상세 헤더가 쓰는 그 보관 기호라서, 그래프도 앱의 나머지와 같은 이름으로 불러요. 점선 테두리가 커밋과 구분해 줘요. 부모 한 줄 위에 앉으니 «이건 브랜치의 일부가 아니다»는 모양이 맡아야 해요.
스태시는 거의 언제나 앉아 있는 커밋보다 새로워서, 시각 순이면 관계없는 커밋들 사이로 떠오르고 줄이 그래프 반쪽을 가로질러요. 부모야말로 스태시가 실제로 관계하는 유일한 행이라서, 그 옆에 머물러요.
한계: 부모 커밋이 불러온 창에 없는 스태시 — 잘렸거나 로그 끝 너머 — 는 닻이 없고, 부모가 올라올 때까지 시각 순으로 돌아가요. 선형 히스토리와 솔로 모드는 떨어뜨리는 부모 위의 스태시도 함께 떨어뜨려요. 위에서 말한 그대로예요.
커밋 상세
커밋을 선택하면 변경된 파일(트리 또는 평면), 작성자, SHA, 공동 작성자, 서명이
보여요. 파일 목록 위 헤더가 개수를 종류별로 나누고, 행의 글자색과 같아요. 마우스를 올리면 그냥 합계가 나와요. #123 참조와 @mentions는 사용하는 호스트로 자동 링크돼요.
파일 목록은 익숙한 제스처로 여러 개를 선택할 수 있어요(⌘/Ctrl+클릭, ⇧+클릭, ⇧+↑/↓). 선택 위에서 우클릭 → 파일 {n}개를 작업 트리로 복원은 이 커밋 시점 그대로의 파일을 가져와요. 한 번의 확인 뒤 작업 사본을 덮어쓰고, HEAD와 인덱스는 건드리지 않아요.

함께 보기: Blame과 파일 히스토리 · 검색 · 타임머신

