콘텐츠로 이동

GitUI - Git용 터미널 UI 치트시트

GitUI - Git용 터미널 UI 치트시트

gitui는 Rust로 작성된 빠르고 키보드 중심의 Git 터미널 UI입니다. 대형 리포지토리에서도 반응성 있는 TUI를 사용하여 대화형 스테이징(개별 hunk 및 라인까지), 커밋, 브랜칭, rebasing, stashing, 로그 탐색을 가능하게 합니다. Electron 기반 Git GUI의 리소스 일부만 사용합니다. raw git와 전체 그래픽 클라이언트 사이의 훌륭한 중간 지점입니다.

설치

플랫폼명령어
Cargo (모든 플랫폼)cargo install gitui
macOS (Homebrew)brew install gitui
Arch Linuxsudo pacman -S gitui
Fedorasudo dnf install gitui
Windows (Scoop)scoop install gitui
Nixnix-env -iA nixpkgs.gitui

실행

명령어설명
gitui현재 리포지토리에서 열기
gitui -d /path/to/repo특정 repo 열기
gitui -w /path/to/worktree작업 디렉터리 설정
gitui --help전체 옵션 목록
gitui --version버전

전역 네비게이션

작업
15탭 전환 (Status, Log, Files, Stashing, …)
Tab패널 순환
/ 또는 h / l창 사이 이동
/ 또는 j / k선택 이동
?상황별 도움말 (현재 뷰의 모든 키 표시)
Esc뒤로 / 취소
q종료

Status & Staging

작업
Space선택된 파일 또는 hunk stage / unstage
Enter선택 항목의 diff에 초점
sStage
S모두 stage
uUnstage
U모두 unstage
DReset (파일 변경 사항 삭제)
c커밋 팝업 열기

커밋

작업
cStaged 변경 커밋
Ctrl+d (커밋 msg에서)메시지 편집기 외부 열기
a마지막 커밋 수정
Sign-off / verifygit 설정을 통해 설정 가능

브랜치

작업
b브랜치 뷰 열기
c (브랜치에서)브랜치 생성
Enter선택된 브랜치 checkout
r브랜치 이름 바꾸기
D브랜치 삭제
m선택된 브랜치를 현재로 병합
R현재를 선택된 브랜치로 rebase

Log, Stash & Remotes

작업
2Log 탭 열기
Enter (커밋에서)커밋 세부사항/diff 검사
4Stashing 탭
s변경 사항 stash
a (stash에서)stash 적용
D (stash에서)stash 드롭
fFetch
pPush
PPull

설정

경로목적
~/.config/gitui/key_bindings.ron사용자 정의 키 바인딩
~/.config/gitui/theme.ron색상 테마
gitui -t mytheme.ron특정 테마로 실행

일반적인 워크플로우

# 원하는 hunk만 검토 및 stage, 그 후 커밋
gitui            # hunk에서 Space 누르고, c로 커밋

# git 플래그 암기 없이 대화형 브랜치 + rebase
gitui            # b로 브랜치 열기, R로 선택된 것으로 rebase

# 빠른 stash, 컨텍스트 전환, 복구
gitui            # 4 (stash tab), s to stash; 나중에 a to apply

GitUI vs 다른 Git 인터페이스

측면GitUIlazygitgit CLI
언어RustGoC
큰 repo에서의 속도매우 빠름빠름빠름
Hunk/line staginggit add -p
학습 곡선낮음낮음높음 (플래그)
리소스 사용최소최소최소

리소스