소개
Gource는 OpenGL 기반의 3D 시각화 도구로, 소스 저장소의 변경 내역을 애니메이션 형태로 보여줍니다. 저장소의 루트를 중심으로 디렉터리는 가지, 파일은 잎사귀처럼 표현되며, 커밋 기록을 읽어 개발자의 기여도 시각화합니다. Git, Mercurial, Bazaar, SVN 등 주요 버전 관리 시스템을 지원하며, CVS는 cvs2cl을 통해 로그를 생성하여 사용할 수 있습니다.
상세정보
저장소 시각화
소스 저장소의 커밋 기록을 읽어 3D 트리 구조로 시각화하며, 디렉터리와 파일을 가지와 잎사귀로 표현합니다. 개발자의 기여도 실시간으로 나타나고 사라집니다.
OpenGL 기반 렌더링
OpenGL을 활용한 고성능 렌더링을 통해 부드러운 애니메이션과 실시간 상호작용을 제공합니다.
다양한 버전 관리 시스템 지원
내장된 로그 생성 지원으로 Git, Mercurial, Bazaar, SVN 저장소를 직접 시각화할 수 있습니다. CVS의 경우 cvs2cl 도구를 사용하여 로그를 생성한 후 Gource로 전달할 수 있습니다.
사용자 정의 및 제어 옵션
뷰포트 크기, 화면 위치, 전체 창/창 모드 전환, 배경 색상 및 이미지, 로고 표시, 폰트 종류 및 크기, 날짜 형식, 타임스케일, 사용자 아바타 크기 및 이동 속도, 카메라 모드(개요/추적), 블룸 효과, 멀티샘플링, VSync 비활성화 등 다양한 옵션을 제공합니다. 또한 파일 및 사용자 필터링, 캡션 표시, 로그 출력, 구성 파일 저장/불러오기 기능도 포함됩니다.
설치·시작·기본 사용
명령 프롬프트에서 gource 명령을 실행하고 시각화할 저장소의 경로를 지정합니다. 경로를 생략하면 현재 디렉터리의 로그를 읽으려고 시도합니다. --help 옵션으로 전체 옵션 목록을 확인할 수 있으며, -WIDTHxHEIGHT로 뷰포트 크기를 조절하거나 -f로 전체 화면 모드를 활성화할 수 있습니다. 날짜 범위를 지정하려면 --start-date와 --stop-date 옵션을 사용하며, 로그 파일을 미리 생성하여 gource --output-custom-log my-project.log와 같이 저장한 후 재사용할 수 있습니다.
활용 예시
현재 디렉터리의 Git 저장소 시각화: gource
특정 디렉터리의 프로젝트 시각화: gource my-project-dir
SVN 저장소의 로그를 파일로 저장한 후 시각화: cd my-svn-project && gource --log-command svn > my-svn-project.log && gource my-svn-project.log
CVS 저장소 시각화를 위한 로그 생성: cvs2cl --chrono --stdout --xml -g-q > my-cvs-project.log && gource my-cvs-project.log
사용자 정의 로그 형식으로 시각화: gource --output-custom-log my-project-custom.log 후 해당 파일을 입력으로 사용
지원 환경·요구사항
Windows 운영 체제에서 실행되며, OpenGL이 가능한 그래픽 하드웨어가 필요합니다. 시각화 품질은 그래픽 카드의 OpenGL 지원 수준에 따라 달라질 수 있습니다.
시스템 요구사항
Gource는 OpenGL을 활용한 고성능 렌더링을 위해 3D 가속이 가능한 비디오 카드가 필요합니다. Windows 운영 체제에서 실행되며, OpenGL이 가능한 그래픽 하드웨어가 필수입니다.


