feat: add git stash management
Add a Stashes dialog with create, apply, pop, and drop actions Include untracked files automatically when stashing Show file counts for current changes and stash entries
This commit is contained in:
@@ -209,6 +209,13 @@ export interface GitPullOptions {
|
||||
rebase?: boolean;
|
||||
}
|
||||
|
||||
export interface GitStashEntry {
|
||||
ref: string;
|
||||
message: string;
|
||||
relativeTime: string;
|
||||
hash: string;
|
||||
}
|
||||
|
||||
export interface GitRemote {
|
||||
name: string;
|
||||
fetchUrl: string;
|
||||
@@ -429,6 +436,12 @@ export interface GitAPI {
|
||||
gitPush(directory: string, options?: { remote?: string; branch?: string; options?: string[] | Record<string, unknown> }): Promise<GitPushResult>;
|
||||
gitPull(directory: string, options?: GitPullOptions): Promise<GitPullResult>;
|
||||
gitFetch(directory: string, options?: { remote?: string; branch?: string }): Promise<{ success: boolean }>;
|
||||
listGitStashes(directory: string): Promise<{ stashes: GitStashEntry[] }>;
|
||||
countGitStashFiles(directory: string, refs: string[]): Promise<{ counts: Record<string, number> }>;
|
||||
stashGitChanges(directory: string, options?: { message?: string }): Promise<{ success: boolean; created: boolean; message: string; output: string }>;
|
||||
applyGitStash(directory: string, options: { ref: string }): Promise<{ success: boolean; ref: string }>;
|
||||
popGitStash(directory: string, options: { ref: string }): Promise<{ success: boolean; ref: string }>;
|
||||
dropGitStash(directory: string, options: { ref: string }): Promise<{ success: boolean; ref: string }>;
|
||||
checkoutBranch(directory: string, branch: string): Promise<{ success: boolean; branch: string }>;
|
||||
createBranch(directory: string, name: string, startPoint?: string): Promise<{ success: boolean; branch: string }>;
|
||||
renameBranch(directory: string, oldName: string, newName: string): Promise<{ success: boolean; branch: string }>;
|
||||
|
||||
Reference in New Issue
Block a user