Christoph Brandau e4697c74b6 feat(git): add ignore and untrack paths commands
The changes introduce server-side commands to manage gitignore
 rules and to untrack paths without deleting local files.
 A new GitIgnoreKind enum and helper functions normalize targets
 and build proper ignore patterns, and UI code was wired to use
 these commands.

- add_to_gitignore command and related helpers
- untrack_paths command to remove paths from the index
- UI wiring to expose ignore and untrack actions in explorer
2026-08-18 13:09:33 +02:00
2026-06-27 13:03:07 +02:00
2026-06-27 13:03:07 +02:00
2026-06-29 14:40:42 +02:00
2026-06-27 23:08:19 +02:00

Gitty Logo

Gitty

A lightweight, modern Git client built with Tauri.

Fast, simple, and designed for developers who want a clean Git experience without unnecessary complexity.


Features

  • 🚀 Fast native performance
  • 🌿 Branch management
  • 📝 Commit history
  • 🔄 Pull, Push & Fetch
  • 🔀 Merge & Rebase
  • 📦 Repository management
  • 🗄️ Git LFS detection, tracking and object management
  • 🎨 Modern and intuitive UI

📸 Preview

Screenshots coming soon.


🛠️ Built With

  • Tauri
  • Rust
  • Svelte

🚧 Status

Gitty is currently under active development.

Contributions, feedback and feature requests are always welcome!


📄 License

MIT License


Arch Linux

Install Gitty from the AUR with an AUR helper:

yay -S gitty-desktop

To install the prebuilt native Arch package instead of compiling from source:

yay -S gitty-desktop-bin

Or build the AUR package manually:

git clone https://aur.archlinux.org/gitty-desktop.git
cd gitty-desktop
makepkg -si

The source recipe downloads the public Gitea release archive and builds Gitty. The -bin recipe repackages the native .pkg.tar.zst release artifact. The release pipeline updates both packages' versions, checksums, and .SRCINFO files.


Git LFS

Gitty bundles the git-lfs executable in its desktop installers and checks it at runtime before offering LFS actions. Arch packages also declare git-lfs as a dependency so Git hooks and command-line workflows outside Gitty use the same extension. The repository toolbar exposes LFS setup, tracked patterns, object downloads, and safe cache pruning. Normal clone, pull, checkout, and push operations continue to use Git's standard LFS filters and pre-push hook. After every successful pull, Gitty detects LFS usage and automatically downloads the required LFS objects with the same remote and credentials, so no second pull is needed.


SigNoz telemetry

After the user opts in, Gitty sends privacy-filtered product events and technical errors as OTLP/HTTP JSON logs. Every Git/Tauri command is also captured as a trace span with its command name, duration and success state, but without command arguments or results. CPU utilization and resident memory usage of the Gitty process are sampled every 30 seconds and exported as OpenTelemetry gauges. The default endpoints are https://telemetry.cbsk-tech.de/v1/logs, https://telemetry.cbsk-tech.de/v1/traces, and https://telemetry.cbsk-tech.de/v1/metrics.

The SigNoz reverse proxy must forward all three paths to the Collector's OTLP/HTTP receiver (normally port 4318). For development or a separate collector hostname, set GITTY_OTLP_LOGS_ENDPOINT, GITTY_OTLP_TRACES_ENDPOINT, and GITTY_OTLP_METRICS_ENDPOINT to the full signal URLs before starting Gitty.

Telemetry is non-blocking, bounded, disabled until consent is stored, and never includes repository paths, remote URLs, branch names, commit messages, diffs, file names, credentials, source code, URLs, or email addresses.

S
Description
No description provided
Readme
14 MiB
2026.8.7
Latest
2026-08-23 21:40:07 +00:00
Languages
Svelte 49.9%
Rust 26.7%
CSS 16.6%
TypeScript 3.7%
JavaScript 1.4%
Other 1.7%