Commit Graph
19 Commits
Author SHA1 Message Date
Christoph Brandau 5752243e6e Implement interactive hunk staging and discarding
Introduce a new dialog that allows users to view file changes as individual hunks and selectively stage, unstage, or discard them. This provides more granular control over modifications, similar to `git add -p`.

Enhance branch panel usability by allowing double-click to checkout a branch.
2026-07-01 14:47:36 +02:00
Christoph Brandau fe392d38bf Optimize repository loading and enhance Git UI
Consolidate multiple Git backend calls into a single bundle to reduce
overhead when opening and auto-refreshing repositories. This significantly
improves performance by fetching status, branches, commits, and files
in one optimized operation, instead of re-running 'git rev-parse' and
'git status' multiple times.

Also, streamline commit history loading by fetching file changes inline
via 'git log --name-status -z', eliminating expensive per-commit
'git diff-tree' processes.

Additionally, introduce the ability to create new branches from a
specific commit in the history and refactor the commit comparison
feature into a dedicated dialog. The status panel now displays concise
file names.
2026-07-01 11:39:22 +02:00
Christoph Brandau 1c7c53ddf9 Add branch creation and file history search
Implement the ability to create new local branches directly from the application's UI. This includes a new backend command to handle branch creation with validation and a frontend form in the branch panel.

Additionally, extend the global search dialog to include a "Files" tab. Users can now search for files by name or path within the repository. Selecting a file in the search results displays its full commit history, with options to diff the file at a specific commit or restore it to that version.
2026-07-01 10:07:59 +02:00
Christoph Brandau 405f302db9 Improve global search: Add diffing from results with query highlighting
Users can now open a diff for a specific search hit directly from the global search results. The original search query will be highlighted within the diff view, making it easier to locate the relevant changes.

Additionally, add `--no-textconv` to git commands used in search and diff operations. This prevents failures when git encounters binary files that textconv drivers might otherwise attempt to process.
2026-06-30 20:32:59 +02:00
Christoph Brandau c5853a6e9b Add in-app updater functionality 2026-06-30 16:56:17 +02:00
Christoph Brandau 58bd246221 add auto-updater and git workflow enhancements
publish / publish-tauri (, windows-latest) (release) Failing after 2m52s
This change introduces a comprehensive auto-update mechanism for the application and significant improvements to the integrated Git client experience.

Key features include:
- **Automated Release Workflow:** A new Gitea Actions workflow (`app_builder.yaml`) and a Python `cicd_tool` are added to automatically build, sign, and upload release artifacts to S3-compatible storage (MinIO) upon a new release. This also generates the `latest.json` file required by the updater.
- **Tauri Updater Integration:** The `tauri-plugin-updater` is integrated into the application, enabling it to check for and apply updates seamlessly.
- **Robust Git Push Handling:** The application now intelligently handles non-fast-forward push failures by prompting the user to perform a pull/merge operation before re-attempting the push.
- **Enhanced File Comparison:** A new `compare_file_to_parent` command is introduced, allowing detailed file diffs against a commit's direct parent, including the "empty tree" for initial commits.
- **Explorer Panel Improvements:** "Expand All" and "Collapse All" functionality is added to the file explorer for better navigation.
2026-06-30 13:23:30 +02:00
Christoph Brandau 4aa9a537f0 add login with oskeychain 2026-06-29 19:13:41 +02:00
Christoph Brandau 8d56c3f39f refine ui
restore in a Dialog
2026-06-29 17:53:02 +02:00
Christoph Brandau b0491d1479 add new style and global search 2026-06-29 17:24:08 +02:00
Christoph Brandau 9861fa2446 add something 2026-06-29 14:40:42 +02:00
Christoph a15d6c0b2c fix wrong ui 2026-06-28 02:23:30 +02:00
Christoph d3d52a5432 change to dark mode 2026-06-28 02:09:09 +02:00
Christoph 5a0a8bdecb test 2026-06-28 00:34:43 +02:00
Christoph 433085a895 add some features 2026-06-27 23:47:15 +02:00
Christoph 5b44a65e51 edit 2026-06-27 23:08:19 +02:00
Christoph Brandau 25700821d1 neu 2026-06-27 17:42:58 +02:00
Christoph Brandau ef1974f31f almost 2026-06-27 14:11:51 +02:00
Christoph Brandau 6a78e768bc add more features 2026-06-27 13:49:56 +02:00
Christoph Brandau 3b9d636fdb init 2026-06-27 13:03:07 +02:00