본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

Ungit

0

Ungit은 Fredrik Noren이 개발한 Git을 위한 웹 기반 시각적 인터페이스입니다. 직관적인 UI를 통해 Git의 복잡한 개념을 쉽게 이해하고 사용할 수 있도록 설계되었습니다.

버전 관리시각적 인터페이스오픈소스웹 기반

소개

Ungit은 Fredrik Noren이 개발한 Git을 위한 웹 기반 시각적 인터페이스입니다. 직관적인 UI를 통해 Git의 복잡한 개념을 쉽게 이해하고 사용할 수 있도록 설계되었습니다. Node.js와 Git이 지원되는 모든 플랫폼에서 실행되며, 브라우저를 통해 로컬 또는 원격 저장소의 Git 작업을 관리할 수 있습니다.

상세정보

시각적 Git 인터페이스

저장소의 브랜치, 커밋, 파일을 그래프 형태로 표시하여 Git의 내부 구조를 직관적으로 이해할 수 있습니다. 커밋 히스토리, 스테이지 영역, 워킹 트리의 상태를 실시간으로 시각화합니다.

파일 변경 사항 상세 보기

파일을 선택하면 줄 단위로 추가 및 삭제된 내용을 색상으로 구분하여 보여줍니다. 이는 코드 리뷰나 디버깅 시 변경 내역을 빠르게 파악하는 데 유용합니다.

자동 새로 고침

페이지 뷰 시 Git 디렉터리를 재귀적으로 감시하여, Git 작업이나 .gitignore에 설정되지 않은 파일 변경이 발생하면 자동으로 인터페이스를 갱신합니다.これにより、수동으로 새로 고침할 필요 없이 최신 상태를 유지할 수 있습니다.

외부 병합 도구 지원

Kaleidoscope나 p4merge와 같은 외부 병합 도구를 설정하여 사용할 수 있습니다. 자세한 설정 방법은 MERGETOOL.md 파일을 참조하세요.

텍스트 에디터 통합

Atom, Brackets, Visual Studio Code와 같은 인기 에디터용 플러그인을 제공하여, 에디터 내에서 바로 Ungit 인터페이스를 호출할 수 있습니다.

다운로드·설치 방법

Node.js (≥ 20.19.0), npm (≥ 10.8.2), Git (≥ 2.34.x)가 사전 설치되어 있어야 합니다. 공식 저장소에서 소스 코드를 받거나, 사전 빌드된 Electron 패키지를 다운로드할 수 있습니다.

npm을 통한 전역 설치 방법은 다음과 같습니다:

npm install -g ungit

시스템에서 전역 npm 패키지 설정에 관리자 권한이 필요한 경우, 다음 명령어를 사용하세요:

sudo -H npm install -g ungit

설치 후, 터미널 또는 명령 프롬프트에서 다음 명령어를 실행하면 Ungit 서버가 시작되고 기본 웹 브라우저가 자동으로 열립니다:

ungit

이때 기본 포트는 8448이며, 주소는 http://localhost:8448입니다. 포트를 변경하려면 실행 시 인수로 지정할 수 있습니다 (예: ungit –port=8080).

기본 사용법/명령어

Ungit을 실행한 후 브라우저에서 인터페이스를 사용할 수 있습니다. 주요 작업 흐름은 다음과 같습니다:

  1. 브라우저에서 Ungit 인터페이스에 접속합니다 (기본값: http://localhost:8448).
  2. 좌측 파일 탐색기에서 작업할 저장소의 폴더를 선택하거나, 저장소가 이미 열려 있는 경우 바로 작업할 수 있습니다.
  3. 변경된 파일을 클릭하면 중앙 패널에 줄 단위 차이가 표시됩니다. 여기서 스테이지 영역으로 파일을 이동하거나, 커밋 메시지를 입력할 수 있습니다.
  4. 커밋 메시지를 입력한 후 ‘Commit’ 버튼을 클릭하면 변경 사항이 저장소에 반영됩니다.
  5. 브랜치 병합, 체리픽, 되돌리기 등은 해당 버튼을 클릭하거나, 우측 상단의 고급 메뉴를 통해 수행할 수 있습니다.
  6. 화면 하단의 그래프는 브랜치와 커밋의 관계를 시각화하여, 저장소의 전체 흐름을 한눈에 파악하는 데 도움을 줍니다.

이런 경우에 유용합니다

Git의 명령어 라인 인터페이스에 익숙하지 않은 개발자나 학습자가 시각적으로 저장소의 상태를 이해하고 싶을 때 유용합니다. 특히 복잡한 브랜치 구조나 병합 충돌을 그래픽으로 확인해야 하는 상황에서 직관적인 조작을 통해 실수를 줄이고 작업 효율을 높일 수 있습니다.

지원 환경·시스템 요구사항

Node.js (≥ 20.19.0), npm (≥ 10.8.2), Git (≥ 2.34.x)가 설치된 Windows, macOS, Linux 환경에서 실행 가능합니다. Electron 기반 사전 빌드 패키지도 제공되지만, Git은 별도로 설치되어 있어야 합니다.

최신 버전·업데이트

현재 버전은 1.5.30이며, 자세한 변경 내역은 CHANGELOG.md 파일을 참조하세요. 저장소의 릴리스 페이지에서 최신 버전을 확인하고 다운로드할 수 있습니다.

제한 사항·확인 사항

  • Ungit은 GPG 인증을 통한 무비밀번호 커밋을 지원하지 않습니다. GPG 키를 사용한 커밋 시, 비밀번호 입력이 필요하거나 별도의 gpg-agent 설정이 필요합니다.
  • 광고 차단 소프트웨어(예: Adblock Plus, uBlock)가 Ungit의 로컬 API 호출을 크로스 도메인 공격으로 오인하여 차단할 수 있습니다. 이 경우 localhost 또는 127.0.0.1과 Ungit 포트를 허용 목록에 추가해야 합니다.
  • Git이 영어나 시스템 기본 언어가 아닌 다른 언어로 설정된 경우, Ungit이 Git 명령어 출력을 올바르게 파싱하지 못해 예기치 않은 동작이 발생할 수 있습니다. Git의 언어 설정을 영어로 유지하는 것이 권장됩니다.
  • Ubuntu에서는 Node.js 실행 파일의 이름이 다를 수 있어 설치 시 문제가 발생할 수 있습니다. 이 경우 저장소의 이슈 #401을 참조하여 조치할 수 있습니다.
  • Debian Wheezy에서는 저장소의 Git과 Node.js 패키지가 너무 오래되어, 최신 버전의 tarball을 다운로드하여 소스에서 직접 빌드해야 합니다.

FAQ

  • Ungit은 무료로 사용할 수 있나요? 네, Ungit은 MIT 라이선스 하에 오픈소스로 배포되며, 무료로 다운로드하고 사용할 수 있습니다.
  • Windows에서 사용할 수 있나요? 네, Node.js와 Git이 설치된 Windows 환경에서 정상적으로 실행됩니다. 공식 문서에 Windows 사용법을 포함한 설치 및 설정 방법이 안내되어 있습니다.
  • 인터넷 연결이 필수인가요? 아니요, Ungit은 로컬 머신에서 실행되는 웹 애플리케이션으로, 인터넷 연결 없이도 로컬 저장소 작업을 관리할 수 있습니다. 단, 원격 저장소와의 동기화(푸시, 풀, 클론 등)를 위해서는 네트워크 연결이 필요합니다.

화면으로 보는 주요 기능

커밋 준비 화면

커밋 준비 화면

Ungit 인터페이스의 커밋 준비 화면입니다. 왼쪽에는 'New header'와 'Body' 입력란이 있으며, 'Commit' 버튼이 있습니다. 중앙에는 'index.html' 파일의 변경 내용이 표시되며, 줄 번호와 함께 '-Sleepy cats'와 '+So many sleepy cats!'와 같은 코드 변경 사항이 색상으로 구분되어 있습니다. 오른쪽 하단에는 'Fetch remote nodes' 버튼이 있습니다. 하단에는 'Init' 커밋과 'master', 'dev' 브랜치가 있는 그래프가 표시됩니다.

OpenPGP 인증서 잠금 해제

OpenPGP 인증서 잠금 해제

MacOS의 'Pentry Mac' 대화상자입니다. 'OpenPGP certificate'의 비밀키를 잠금 해제하기 위해 'Passphrase' 입력란이 있으며, 'Save in Keychain' 체크박스가 선택되어 있습니다. 'Show typing' 체크박스와 'Cancel', 'OK' 버튼이 있습니다.

커밋 보기 및 변경 내용 확인

커밋 보기 및 변경 내용 확인

Ungit 인터페이스의 커밋 보기 화면입니다. 왼쪽에는 파일 탐색기와 'clicktests.js' 파일이 선택되어 있습니다. 중앙에는 'Using locally cloned repo for submodule test'와 'Using isArray method'라는 두 개의 커밋이 표시되며, 각각의 커밋 정보와 변경된 코드가 보입니다. 'Cherry pick'과 'Revert' 버튼이 있습니다. 오른쪽 상단에는 'Fetch nodes from origin'과 'Submodules' 버튼이 있습니다.

커밋 준비 및 실행

커밋 준비 및 실행

Ungit 인터페이스의 커밋 준비 화면입니다. 왼쪽에는 파일 탐색기와 'README.md', 'screenshots/viewer.png' 파일이 선택되어 있습니다. 중앙에는 'Title (required)'와 'Body' 입력란이 있으며, 'Amend last commit' 체크박스와 'Commit' 버튼이 있습니다. 오른쪽 하단에는 'Fetch nodes from origin'과 'Submodules' 버튼이 있으며, 하단에는 'Add . files'와 'Initial commit' 커밋이 표시됩니다.

시스템 요구사항

Node.js (≥ 20.19.0), npm (≥ 10.8.2), Git (≥ 2.34.x)가 필요합니다.