Commit Graph

445 Commits

Author SHA1 Message Date
Nathan Baulch
a229a19b2e fix: discard null process output data (#1571) 2025-07-14 10:03:43 +08:00
leo
6ae8c7c759 code_style: move class extensions to App.Extensions.cs to use these extensions anywhere
Signed-off-by: leo <longshuang@msn.cn>
2025-07-11 18:00:21 +08:00
Nathan Baulch
9c039215cf fix: escape double quotes in quoted git command strings (#1559) 2025-07-11 15:53:42 +08:00
leo
b1efd6527c feature: allows to reword HEAD commit while keeping local changes
Signed-off-by: leo <longshuang@msn.cn>
2025-07-11 14:09:41 +08:00
Nathan Baulch
3f5f74d7ae enhance: support --autostash on interactive rebase (#1556) 2025-07-11 13:27:07 +08:00
leo
8f9094fc77 fix: should use File.Create instead of File.OpenWrite
Signed-off-by: leo <longshuang@msn.cn>
2025-07-11 10:39:33 +08:00
leo
8bdc1c5976 code_style: a few more to PR #1543
Signed-off-by: leo <longshuang@msn.cn>
2025-07-09 16:37:12 +08:00
Nathan Baulch
796f8898c9 code_style: general cleanup (#1543)
* code_style: general cleanup

* feedback fixes
2025-07-09 16:12:03 +08:00
leo
af7e68b3db ux: use the same tooltip style for submodule when displaying as tree
Signed-off-by: leo <longshuang@msn.cn>
2025-07-09 15:18:04 +08:00
leo
c1d6b388f7 code_review: PR #1540
- Fix the issue that `StringReader` traits all outputs of `git ls-tree -z` command as a single-line
- Remove unused namespace using

Signed-off-by: leo <longshuang@msn.cn>
2025-07-07 17:52:19 +08:00
Nathan Baulch
5c9d96fe7a refactor: streamline certain string operations (#1540) 2025-07-07 17:36:41 +08:00
leo
f7b2063e8d refactor: rewrite integration for git branch command
Signed-off-by: leo <longshuang@msn.cn>
2025-07-07 17:25:48 +08:00
leo
b2aac68600 refactor: rewrite integration for git difftool and git mergetool command
Signed-off-by: leo <longshuang@msn.cn>
2025-07-07 17:16:22 +08:00
leo
fba1b63af8 feature: supports to change submodule's branch (#1513)
Signed-off-by: leo <longshuang@msn.cn>
2025-07-05 19:16:07 +08:00
Nathan Baulch
3583527026 code_style: general cleanup (#1525) 2025-07-05 15:58:16 +08:00
leo
5687265582 feature: supports git submodule set-url -- <path> <new_url> (#1506)
Signed-off-by: leo <longshuang@msn.cn>
2025-07-04 16:53:27 +08:00
leo
56a9447e19 feature: supports to move selected submodule (#1507)
Signed-off-by: leo <longshuang@msn.cn>
2025-07-04 11:00:24 +08:00
leo
9ecf83d1d6 enhance: use ConfigureAwait for commands to query submodules
Signed-off-by: leo <longshuang@msn.cn>
2025-07-03 20:57:03 +08:00
leo
18b9d982ce refactor: remove ConfigureAwait when we need to go back to UIThread after it
Signed-off-by: leo <longshuang@msn.cn>
2025-07-03 18:42:56 +08:00
leo
40765826ce code_review: PR #1492
- Remove all synchronous method in commands
- `Command.ReadToEndAsync` now is protected method
- Rename `ResultAsync` to `GetResultAsync`
- Call `ConfigureAwait(false)` when there's no context

Signed-off-by: leo <longshuang@msn.cn>
2025-07-03 17:30:06 +08:00
Nathan Baulch
463e304491 feature: async (#1492)
* Async command methods
* Async `Task.Run` where possible
* Remove redundant `Task.Run` in `Sure` methods
* Remove leftover braces and reformat
* Async event handlers as needed
2025-07-03 15:38:39 +08:00
leo
3fe72e919c code_review: PR #1497
Signed-off-by: leo <longshuang@msn.cn>
2025-07-03 11:15:14 +08:00
Nathan Baulch
ec17ea9901 code_style: general cleanup (#1497) 2025-07-03 10:32:03 +08:00
Nathan Baulch
25afcba44b refactor: auto dispatch notifications to UI thread in Launcher (#1489) 2025-07-02 13:09:30 +08:00
leo
61372e2ffd code_review: PR #1472
Move `Commands.IsCommitSHA` testing from `Commands.QuerySingleCommit` to `ViewModels.Repository.StartSearchCommits`,  because we only need test the SHA user typed in

Signed-off-by: leo <longshuang@msn.cn>
2025-06-30 10:06:13 +08:00
Sina Hinderks
8602ba2fc3 fix: searching for tree/blob hash never-ending (#1472)
Searching for a tree or blob hash instead of a commit hash created a
seemingly never-ending search (internally an exception was thrown).

Examples for non-ending searches in the SourceGit repository itself are
searching for 6b83a0a (that is the tree "src" of commit 190d2ee) or
e686a53 (that is the file ".gitignore" in the tree of commit 190d2ee).
2025-06-30 10:00:32 +08:00
leo
133b69de4a feature: supports to copy selected folder path in changes and rename searching by file to searching by path (#1470)
Signed-off-by: leo <longshuang@msn.cn>
2025-06-28 12:38:03 +08:00
Nathan Baulch
1acf2a14df code_style: general cleanup (#1469) 2025-06-28 10:25:56 +08:00
leo
295718effe code_style: execute custom action has nothing to do with git command
Signed-off-by: leo <longshuang@msn.cn>
2025-06-25 19:22:57 +08:00
leo
b519ead5a1 feature: supports to add ignored file(s) locally (saved in $GIT_DIR/info/exclude) (#1447)
Signed-off-by: leo <longshuang@msn.cn>
2025-06-23 17:22:57 +08:00
leo
dcd8effc32 fix: saving revision file may crash this app if target dir is not exists (#1434)
Signed-off-by: leo <longshuang@msn.cn>
2025-06-19 11:39:53 +08:00
leo
2d91fed05e code_style: remove unnecessary namespace using
Signed-off-by: leo <longshuang@msn.cn>
2025-06-18 14:30:46 +08:00
Göran W
004022648c Add "Copy Message" to context-menu for Stash item (#1430)
* Refactor: Simplify parsing in QueryStashes, by passing the `-z` argument to `git stash list` for item separation.
* Add "Copy Message" command in stash-item context-menu.
2025-06-18 13:48:39 +08:00
leo
6d682ac409 refactor: stash (#1420) (#1426)
- supports to use multi-line as stash message
- new style to display stashes

Signed-off-by: leo <longshuang@msn.cn>
2025-06-18 12:32:50 +08:00
Nathan Baulch
d404f6dbe2 code_style: general cleanup (#1428) 2025-06-18 09:29:18 +08:00
leo
90310a704d feature: supports to customize merge message (--edit) (#1421)
Signed-off-by: leo <longshuang@msn.cn>
2025-06-17 15:07:55 +08:00
Nathan Baulch
ffac71b15f code_style: general cleanup (#1415)
* code_style:  general cleanup

* code_style: whitespace cleanup
2025-06-12 09:35:37 +08:00
leo
5494093261 refactor: now all filesystem related trees/lists are sorted in case-insensitive mode
Signed-off-by: leo <longshuang@msn.cn>
2025-06-11 15:20:50 +08:00
Nathan Baulch
7bba40d03f typos: (#1397) 2025-06-06 12:10:55 +08:00
leo
f716c5ee1e refactor: use existing QueryFileContent command
Signed-off-by: leo <longshuang@msn.cn>
2025-06-04 21:30:08 +08:00
leo
ed496a41fb feature: supports to view image diff when lfs object points to a image
Signed-off-by: leo <longshuang@msn.cn>
2025-06-04 20:53:42 +08:00
leo
6e501b1ee4 feature!: now SourceGit requires git >= 2.25.1
Signed-off-by: leo <longshuang@msn.cn>
2025-06-02 22:38:00 +08:00
leo
f1052c3efc refactor: use git reset --hard HEAD to discard all changes and use git restore --staged to unstage changes in text diff view
Signed-off-by: leo <longshuang@msn.cn>
2025-06-02 12:50:58 +08:00
leo
78f9ae2fa9 refactor: rewrite git restore integration
Signed-off-by: leo <longshuang@msn.cn>
2025-06-02 12:14:22 +08:00
leo
fa004ce31b enhance: unstaged renamed file should use git restore --staged <path> <org_path> instead of git restore --staged <path>
Signed-off-by: leo <longshuang@msn.cn>
2025-06-01 11:19:41 +08:00
leo
a9734ea8e9 code_style: remove unused code
Signed-off-by: leo <longshuang@msn.cn>
2025-05-31 11:33:22 +08:00
leo
bc5deac9fe fix: OpenFolderPickerAsync raise exception when selected a drive root such as E:\
Signed-off-by: leo <longshuang@msn.cn>
2025-05-30 17:12:56 +08:00
leo
e40ca4bbe0 refactor: use git restore instead of git reset to unstage local changes (#1373)
Signed-off-by: leo <longshuang@msn.cn>
2025-05-30 09:43:45 +08:00
leo
46231a759c code_style: run dotnet format
Signed-off-by: leo <longshuang@msn.cn>
2025-05-28 15:17:05 +08:00
leo
fbc8edcc13 feature: show conflict reason
Signed-off-by: leo <longshuang@msn.cn>
2025-05-28 14:20:56 +08:00