https://github.com/zlx2019/git-pincer-desktop
đĻ An IDEA-style three-pane GUI that grips Git conflicts â resolve merge / rebase / cherry-pick chunk by chunk.
https://github.com/zlx2019/git-pincer-desktop
desktop git rust tauri
Last synced: 8 days ago
JSON representation
đĻ An IDEA-style three-pane GUI that grips Git conflicts â resolve merge / rebase / cherry-pick chunk by chunk.
- Host: GitHub
- URL: https://github.com/zlx2019/git-pincer-desktop
- Owner: zlx2019
- License: mit
- Created: 2026-07-10T15:20:59.000Z (11 days ago)
- Default Branch: main
- Last Pushed: 2026-07-13T05:28:11.000Z (8 days ago)
- Last Synced: 2026-07-13T07:00:12.807Z (8 days ago)
- Topics: desktop, git, rust, tauri
- Language: Svelte
- Homepage:
- Size: 2.1 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# PINCER
[](https://github.com/zlx2019/git-pincer-desktop/actions/workflows/ci.yml)
[](https://github.com/zlx2019/git-pincer-desktop/releases)
[](LICENSE)

**English** | [įŽäŊ䏿](README.zh.md)
> **PINCER** takes its name from Rust's mascot â the crab. A Git conflict is two branches
> pinching the same piece of code at the same time, while a crab's pincer stands for stability,
> precision and control. May it grip both sides of every conflict firmly and carry the merge
> through.
The desktop version of [git-pincer](https://github.com/zlx2019/git-pincer) (CLI/TUI).
## Features
- **Command palette** â compact 420Ã640 window with the five operations on â1ââ5 and
terminal-style live output; usable as a desktop side widget
- **Automatic takeover** â conflicts born in the palette *or* in an external terminal switch
the app to the large conflict window the moment they appear
- **Conflicts list** â multi-select Accept Yours / Theirs, directory grouping, delete-conflict
handling, binary pick-one, multi-round `--continue` relay, Abort
- **Three-pane editor** â IDEA-style chunk bands with word-level emphasis, seam ribbons with
apply / ignore / revert buttons, batch-apply, F7 navigation, a shared horizontal scrollbar,
free editing in the result pane
- **Rust merge engine** â two line-level Myers diffs with base-range collision chunking;
reports one conflict too many rather than silently mis-merging
- **Native git, zero magic** â everything shells out to your git binary, so credentials, hooks
and rerere follow your existing configuration; no network, no telemetry
Dark / light theme, Chinese / English UI, editor font and close-to-tray behavior live in
Settings (â,).
## Install
Grab the artifact for your platform from
[Releases](https://github.com/zlx2019/git-pincer-desktop/releases):
| Platform | Artifacts |
|---|---|
| macOS | `.dmg` |
| Windows | `.exe` (NSIS) / `.msi` (stable releases only) |
| Linux | `.AppImage` / `.deb` / `.rpm` (requires `webkit2gtk`) |
Current builds are **not code-signed**, so the first launch needs a manual bypass:
- **macOS**: right-click the app â Open; if that fails run
`xattr -dr com.apple.quarantine /Applications/Pincer.app`
- **Windows**: when SmartScreen blocks, click "More info â Run anyway"
- **Linux**: `chmod +x` the AppImage before running
## Develop
```bash
pnpm install # Node >= 22, pnpm pinned via packageManager
pnpm tauri dev
```
Checks, commit conventions and the release process are documented in
[CONTRIBUTING](CONTRIBUTING.md).
## FAQ
**Why only the conflict flow, and not a full git client?**
Positioning. Log / commit / push are already served well by your shell and existing GUIs; the
one moment that still hurts is conflict resolution, so PINCER does exactly that slice.
**How does it relate to IDEA's built-in merge tool?**
IDEA's resolver is the interaction benchmark (the UI is a deliberate 1:1 restoration), but you
get it without opening an IDE â a lightweight native window over your own git binary.
**macOS says the app is damaged / from an unidentified developer.**
Expected for unsigned builds â see [Install](#install). Right-click â Open once, or clear the
quarantine attribute.
**What does Linux need at runtime?**
`webkit2gtk` (the Tauri webview). The `.deb` / `.rpm` declare it as a dependency; for the
AppImage install it from your distribution's repositories.
## License
[MIT](LICENSE)