Git 이력 그래프 탐색기
Git에서 커밋 목록을 직접 내보내 붙여 넣으면 부모 관계를 그래프로 볼 수 있습니다. 두 커밋을 골라 최선 공통 조상과 각 부모 경로를 비교합니다. 일부만 내보낸 이력의 누락된 부모와 분리된 이력을 명시적으로 보여줍니다. 이 페이지는 저장소를 읽거나 Git 명령을 실행하지 않습니다.
주요 기능
- git log의 커밋·부모·제목 TSV 또는 JSON 커밋 배열 분석
- ID·병합 부모·중복·순환 검증 및 부분 내보내기의 누락된 부모 표시
- 알려진 모든 부모 간선을 그리고 연결되지 않은 이력을 분리 표시
- 두 커밋의 최선 공통 조상 여러 개와 최단 부모 경로 비교
- SVG 그래프와 JSON 분석 보고서 다운로드
사용 방법
- 자신의 터미널에서 안내된 git log 명령으로 내보내 붙여 넣거나 예제를 불러옵니다.
- 데이터를 분석하고 중복 ID·순환 등의 오류를 수정합니다.
- 커밋 두 개를 골라 최선 공통 조상과 부모 경로를 확인합니다.
- 그래프를 스크롤하고 전체 커밋 표에서 정확한 ID·제목을 봅니다.
- 공유가 필요하면 내용을 확인한 뒤 SVG나 JSON을 내려받습니다.
활용 예시
- 기능 브랜치가 병합 전 어디에서 갈라졌는지 설명
- 첫 부모만 보는 대신 병합 커밋의 두 부모를 모두 확인
- 제한된 로그의 누락된 부모나 관계 없는 이력 묶음 식별
자주 묻는 질문
어떤 텍스트 형식으로 입력하나요?
한 줄에 탭으로 구분한 커밋 ID, 공백으로 구분한 부모 ID들, 제목을 입력합니다. 예: git log --all --pretty=format:%H%x09%P%x09%s. JSON 배열 또는 {"commits":[{"id":"...","parents":["..."],"subject":"..."}]}도 됩니다.
저장소에 접속하나요?
아니요. 붙여 넣거나 로컬에서 선택한 텍스트만 분석합니다. git log 내보내기는 사용자가 자신의 터미널에서 실행해야 합니다.
최선 공통 조상이란 무엇인가요?
두 선택 커밋에서 부모 방향으로 모두 도달할 수 있고, 입력된 그래프 안에서 더 새로운 공통 후손이 없는 커밋입니다. 엇갈린 병합에서는 여러 개가 나올 수 있습니다.
내보낸 로그에 부모가 빠지면 어떻게 되나요?
누락된 부모 ID를 경계 참조로 표시합니다. 비교는 입력된 커밋만 사용하므로 부분 내보내기에서는 실제 공통 조상이 가려질 수 있습니다.
연결되지 않은 이력은 오류인가요?
아니요. 관계 없는 루트는 별도 구성 요소가 됩니다. 서로 다른 묶음을 비교하면 입력된 자료 안에 공통 조상이 없다고 표시합니다.
크기 제한은 무엇인가요?
입력은 256KiB·커밋 150개, 커밋당 부모 8개까지입니다. ID는 7~64자리 16진수이며 부모 ID와 정확히 일치해야 합니다. 전체 Git 객체 데이터베이스가 아닌 로컬 시각 분석 도구입니다.
개인정보 안내
붙여 넣은 이력과 선택한 파일은 브라우저 메모리에서만 처리합니다. 저장소를 열거나 Git 명령·네트워크 요청을 실행하지 않습니다. 다운로드한 SVG·JSON에는 커밋 ID와 제목이 포함되므로 공유 전에 확인하세요.
댓글과 질문