feat(git-lfs): improve activation and add HTTP/1.1 retry

The change adds a safer LFS activation flow that ensures a
root .gitattributes file is not hidden by ignore rules and
activates local LFS filters. It also merges patterns from the
repository attributes with those reported by Git LFS to avoid
duplicates and inaccuracies.

- Adds a retry path for large LFS uploads by forcing HTTP/1.1
during pushes when an HTTP 413 error is returned.
This commit is contained in:
Christoph Brandau
2026-08-18 21:36:13 +02:00
parent 7408371430
commit 6d806e87ea
8 changed files with 522 additions and 47 deletions
+19 -5
View File
@@ -103,17 +103,31 @@ the running window when Gitty is already open.
---
## Development
Start the complete desktop application in development mode with:
```bash
npm run tauri:dev
```
The development launcher preserves normal proxy settings. If a sandboxed
development terminal injects the non-routing `127.0.0.1:9` proxy or its
blocking SSH placeholder, those values are removed only for the Tauri child
process so Git remotes and Git LFS remain testable in the debug application.
---
## 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.
downloads, and safe cache pruning. After every successful clone or pull, Gitty
detects LFS usage and automatically downloads the required LFS objects with the
same remote and credentials, so no second pull is needed. Fresh clones also get
repository-local LFS filters and the pre-push hook before they are opened.
---