#overviewIn progress

# story

GitDesk covers the git work I do most days: read a diff, tick the files that belong in this commit, push. It does that in an app small enough not to notice, at 4.4 MB, and opens straight into a repository from the terminal.

History⎇ main
  1. 01

    See what changed

    Every modified file, with a checkbox.

  2. 02

    Read the diff

    Line numbers and coloured hunks.

  3. 03

    Commit what you picked

    Unticked files stay where they are.

  4. 04

    Push

    One button, with ahead and behind counts.

It does not reimplement git. The Rust core drives the git already on your PATH and parses its output, so your config, hooks, credential helper and SSH agent keep working exactly as they do on the command line.

React UI what you click
↓ typed Tauri commands
Rust core runs and parses
↓ spawns
your git on PATH
confighookscredential helperSSH agent

That git layer is covered by integration tests that run against real repositories. Next up are hunk-level staging, stash, and resolving merge conflicts without leaving the app.

# screenshots

GitDesk screenshot 1
GitDesk screenshot 2
GitDesk screenshot 3

# features

  • Changes view with per-file checkboxes: commit exactly the files you pick and leave the rest alone.
  • Side-by-side line numbers and coloured hunks in the diff view, for working-tree and historical changes.
  • History with commit details and per-file diffs, loaded 100 commits at a time.
  • Branch picker with filter, create-from-current and one-click checkout of remote branches.
  • Fetch, pull, push and publish from a single toolbar button that shows ahead and behind counts.
  • Clone by URL, add an existing folder, or create a new repository. Your keychain and SSH agent handle auth.
  • Opens straight into a repository from the command line: gitdesk ~/code/project.
  • Tauri 2
  • Rust
  • React
  • TypeScript
  • Vite
  • git CLI

# changelog

  1. v0.1.0

    First working client

    • Changes, diff, commit, discard, history, branches, fetch/pull/push and clone.
    • Rust git layer covered by integration tests against real repositories.
    • Light and dark themes that follow the system.

# roadmap

M1

Finer-grained commits

  • Stage individual hunks and lines
  • Stash and restore work in progress
  • Amend the last commit
M2

Merging and conflicts

  • Merge a branch into the current one
  • Conflict list with ours/theirs resolution
  • Cherry-pick and revert from history
M3

GitHub integration

  • Sign in with the device flow
  • List and open pull requests
  • Create a pull request from the current branch
M4

Release

  • Signed and notarised builds with auto-update
  • CI builds for Windows and Linux
  • Keyboard shortcuts and an accessibility pass

# requirements

Operating system

  • macOS 11+
  • Windows 10 / 11 (WebView2)
  • Ubuntu 22.04+ (WebKitGTK)

Hardware

  • Any machine that runs git
  • Around 100 MB of RAM with a repository open

Also needed

  • git 2.23 or newer on PATH

# download

GitDesk is still in progress. Signed builds for macOS, Windows, Linux arrive with milestone M4. Follow the repository for releases, or build it from source today.

macOS · soonWindows · soonLinux · soon Follow on GitHub →