feat(git): add stash push with optional paths and per-file scope

The stash push feature now supports limiting the stash to
selected files via an optional paths parameter.
The UI passes file paths to stash_push and adds a
per-file context menu for scoped stash operations.

- Extend stash API to accept optional paths for scoped stashes
- Implement per-file stash actions via a status panel context menu
- Update tests and docs to reflect scoped stash behavior
This commit is contained in:
Christoph Brandau
2026-08-17 22:24:22 +02:00
parent e7fbaadf5e
commit b5d15f9190
8 changed files with 328 additions and 20 deletions
+2
View File
@@ -332,11 +332,13 @@ export function stashPush(
path: string,
message?: string,
includeUntracked = true,
paths?: string[],
): Promise<GitStatus> {
return invoke<GitStatus>("stash_push", {
path,
message: message?.trim() ? message.trim() : null,
includeUntracked,
paths: paths?.length ? paths : null,
});
}