Hyunyoung Park19 downloadsReview, stage, commit, push and pull your vault's Git changes from a sidebar panel.
A Git changes panel for the Obsidian right sidebar: review diffs, stage, commit, push and pull your vault without leaving the app. Every action is an icon button, including a combined Commit and push button.
Desktop only. Requires Obsidian 1.7.2 or later and a working Git installation. The vault folder itself must be the root of the Git repository; a repository in a parent folder is refused on purpose.
Luggit is an independent plugin. It is not an official Git Project product and is not affiliated with or endorsed by the Git Project. See NOTICE.md for the Git logo's source, license and trademark notice.
main.js, manifest.json and styles.css from the latest release.<your vault>/.obsidian/plugins/luggit/.Release assets are built by GitHub Actions and carry artifact attestations. Verify a download with gh attestation verify main.js --repo lugglory/luggit.
Enabling the plugin opens the Git changes panel in the right sidebar. Reopen it any time from the ribbon icon or with the command Luggit: Git 변경사항 패널 열기 (open the Git changes panel). The interface is currently in Korean; every button has a tooltip and an accessible name.
Ctrl+Enter (Cmd+Enter on macOS), or use the toolbar. With nothing staged, a commit stages everything first. An empty message is filled in with the name of the most changed file.Open notes are saved before every Git action, and only one Git action runs at a time. The lists refresh automatically: Obsidian reports changes to vault files, and the plugin additionally watches the .obsidian and .git folders, so plugin or settings changes and Git commands run from a terminal are picked up as well. The workspace layout file is skipped because Obsidian rewrites it constantly. A 변경사항 새로고침 (refresh) command is available as a fallback. All commands can be given hotkeys under Settings → Hotkeys.
| Setting | Default | What it does |
|---|---|---|
| Pull on startup | On | Fast-forward pull when a remote exists and the vault has no changes. |
| Push on exit | On | Pushes existing commits for up to 15 seconds. Never stages or commits. A failure is reported on the next start. |
| Git executable | git |
Name or absolute path of the Git executable. |
While the plugin is enabled, Obsidian's shared notice area moves to the bottom right so notices do not cover the panel toolbar. This also applies to notices from other plugins.
child_process): the plugin works by running your installed git executable, always with an argument list and never through a shell. It runs no other program. The working directory is always the vault root.fs): used only inside the vault folder, to check that the vault is the repository root, to preview untracked files in the diff view, and to watch the .obsidian and .git folders for changes. Nothing outside the vault is read or written.git pull and git push contact the remotes you configured. No telemetry.data.json.quit event; forced quits skip it.npm ci
npm run build
npm test
npm run test:ui
npm run test:ui drives the panel in a hidden Electron window. To release, run npm version patch (or minor / major) and git push --follow-tags; GitHub Actions builds, tests, attests and publishes the release.
MIT. The Git logo is covered by separate terms; see NOTICE.md.
Revision의 Git 패널을 Obsidian 오른쪽 사이드바에서 사용하는 독립 플러그인입니다. 버튼은 아이콘으로만 표시하며, 커밋 아이콘과 Push 아이콘을 합친 커밋 후 Push 버튼을 포함합니다.
Git 프로젝트의 공식·제휴 제품이 아닙니다. Git 기능을 나타내는 공식 로고의 출처·라이선스·상표 안내를 확인하세요.
패널 상단 버튼을 가리지 않도록 Obsidian 공용 알림 영역을 오른쪽 아래로 배치합니다. 플러그인이 켜져 있는 동안 다른 플러그인의 알림에도 적용됩니다. 일반 완료 알림은 1.5초, 오류는 6초, 지난 종료 시 Push 실패는 8초 동안 표시하며, 작업 중 알림은 작업이 끝나면 사라집니다.
데스크톱 Obsidian 1.7.2 이상과 Git이 필요합니다.
.obsidian/plugins/ 안에 luggit 폴더를 만듭니다.manifest.json, main.js, styles.css를 받아 넣습니다. 직접 빌드하려면 npm ci && npm run build 후 같은 세 파일을 복사합니다.보관함/.obsidian/plugins/luggit/
├── manifest.json
├── main.js
└── styles.css
켜면 오른쪽 사이드바에 Git 변경사항 패널이 열립니다. 리본의 Git 공식 로고 아이콘이나 Luggit: Git 변경사항 패널 열기 명령으로 다시 열 수 있습니다. 패널 탭에도 같은 아이콘을 사용합니다. Git 기능을 나타내는 로고이며 이 플러그인은 Git 프로젝트의 공식·제휴 제품이 아닙니다. 로고 출처와 라이선스·상표 안내.
스테이지됨, 변경됨, 최근 변경한 파일 제목 행으로 각 목록을 접고 펼칩니다. 목록이 새로고침되어도 접힌 상태를 유지하며, 옆의 전체 작업 버튼은 접기와 별도로 동작합니다.Git 작업 이름은 툴팁으로 표시하지 않습니다. 확인창에서는 버튼 이름을 표시합니다. 등을 붙입니다./dev/null 같은 Git 메타데이터는 숨기고, 이전/현재 줄 번호와 추가·삭제 줄 수를 보여줍니다. 본문 자체에 들어 있는 같은 문구는 그대로 보존합니다. 긴 diff는 처음 3,000줄을 표시하고 생략 여부를 알립니다.문서 열기 버튼을 제공합니다.변경됨 옆에는 모두 버리기도 유지하며 확인창을 거칩니다. 추적 중인 파일은 인덱스에 저장된 내용으로 돌아가고, 추적하지 않는 새 파일은 휴지통으로 보냅니다.취소·변경 버리기/모두 버리기입니다. 승인 버튼에 기본 포커스가 있으며 Enter/Space로 승인합니다. 취소 버튼으로 직접 포커스를 옮겼을 때는 해당 버튼의 기본 동작을 유지합니다. Esc나 바깥쪽 클릭은 취소입니다.현재 문서 저장 후 스테이지, 모두 저장 후 스테이지, 커밋, 커밋 후 Push, Pull, Push, 변경사항 새로고침 명령에도 Obsidian 설정 → 단축키에서 키를 지정할 수 있습니다. 기존 Obsidian 저장 단축키를 자동으로 덮어쓰지는 않습니다.origin 또는 유일한 원격에 현재 브랜치를 연결해 Push합니다..obsidian)와 .git 폴더만 직접 감시합니다. 따라서 플러그인·설정 변경과 외부 터미널의 커밋·fetch·checkout도 반영됩니다. 탭 전환마다 다시 쓰이는 workspace.json은 감시에서 제외합니다. 연속된 변경은 0.5초로 모아서 처리하며, 마우스·포커스 이동이나 타이머로는 갱신하지 않습니다. 보관함 루트의 다른 점 파일(.gitignore 등)만 바뀐 경우는 다음 변화 때 함께 반영되며, 바로 보려면 변경사항 새로고침 명령을 씁니다. Pull 버튼의 Pull이 실패하거나 미커밋 변경으로 중단되어도 로컬 목록은 갱신하고 이유를 알립니다. 명령 팔레트의 Pull도 같은 동작을 합니다.Ctrl+Enter(macOS는 Cmd+Enter도 지원)로 커밋합니다.시작할 때 Pull과 종료할 때 Push는 기본 켜짐이며 설정에서 변경할 수 있습니다. 기존에 저장한 설정은 유지됩니다. 종료 Push는 이미 만든 커밋만 최대 15초 동안 보내며 자동 스테이지·커밋은 하지 않습니다. 실패하면 다음 실행에 안내하고, 수동 Push 성공 후 안내를 지웁니다.data.json이 바뀌지 않습니다. 일반 사용자 설정은 data.json에 유지됩니다. 이 임시 상태를 위한 .gitignore 등록은 필요 없습니다.quit 이벤트는 실행이 보장되지 않으므로 강제 종료 등에서는 종료 Push가 생략될 수 있습니다. Git 실행 파일 경로도 설정에서 지정할 수 있습니다..obsidian, .trash 등 제외할 경로는 보관함의 .gitignore에 직접 지정하세요.이 폴더에서 실행합니다. 다른 폴더의 파일은 필요 없습니다.
npm ci
npm run build
npm test
npm run test:ui
src/ 수정 후 빌드하면 실행용 main.js가 만들어집니다(저장소에는 포함하지 않고 릴리즈에 첨부합니다). npm run test:ui는 숨긴 Electron 테스트 창에서 패널 배치·호버·diff·확인창 키보드 동작과, 미커밋 변경이 있어도 창이 그대로 닫히는지를 확인합니다. 요구사항 대조 기록에 적용 범위와 호스트 검증 한계를 정리했습니다.
테스트는 임시 Git 저장소에서 스테이지·이름 변경·커밋·로컬 원격 Push·변경 버리기를 실행하고, 커밋 후 Push 재시도 흐름을 검증합니다. UI/보관함 API 대역을 사용한 검증과 실제 Obsidian에서의 검증은 다릅니다. 배포 전 실제 보관함의 복사본에서 동작을 확인하세요.
API 참고: Obsidian 공식 API, 플러그인 개발 안내.
npm version patch # 또는 minor / major. package.json, manifest.json, versions.json을 함께 올리고 태그를 만듭니다.
git push --follow-tags
v 접두사 없는 버전 태그(예: 0.1.1)가 올라가면 GitHub Actions가 빌드·테스트 후 main.js, manifest.json, styles.css를 첨부한 릴리즈를 만듭니다. 태그와 manifest.json의 버전이 다르면 실패합니다.