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
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
8277d7fc1b
enhance: open external tool to merge conflicts instead of viewing diff
...
Signed-off-by: leo <longshuang@msn.cn >
2025-07-07 15:49:02 +08:00
leo
4f4b90d424
ux: re-order context menu items
...
Signed-off-by: leo <longshuang@msn.cn >
2025-07-07 15:09:05 +08:00
Nathan Baulch
6d068157b4
enhance: diff with merger option on local changes ( #1534 )
2025-07-07 14:53:09 +08:00
leo
b85f100d84
code_review: PR #1532
...
- remove `MenuItemExtension`
- display `Tag` as hotkey tips when `InputGesture` is null
- remove `Avalonia.Input` reference in `ViewModels`
- rewrite `InteractiveRebase` view to avoid using `Tag` in menu item
Signed-off-by: leo <longshuang@msn.cn >
2025-07-07 12:44:31 +08:00
Nathan Baulch
dd3c658a0d
ux: show a few more shortcuts on menu items ( #1532 )
2025-07-07 11:38:06 +08:00
Nathan Baulch
3583527026
code_style: general cleanup ( #1525 )
2025-07-05 15:58:16 +08:00
leo
cdb84c7c43
typo: ShowDailog -> ShowDialog
...
Signed-off-by: leo <longshuang@msn.cn >
2025-07-04 15:36:45 +08:00
leo
a6ebc1502c
refactor: show child-window and modal dialog
...
Signed-off-by: leo <longshuang@msn.cn >
2025-07-04 14:49:04 +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
leo
d4723eeea2
feature: supports show commit histories under selected folder ( #1470 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-07-01 16:03:27 +08:00
Nathan Baulch
25e6adeb08
enhance: stream directly to files where possible ( #1481 )
2025-07-01 12:14:10 +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
leo
5f9d181a6c
ux: use simple TextBox instead of NameHighlightedTextBlock for commit message histories
...
Signed-off-by: leo <longshuang@msn.cn >
2025-06-27 17:03:59 +08:00
leo
0e22503b22
feature: warn users when checking out new branch with commits not connected to any branches ( #1463 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-06-26 12:58:31 +08:00
leo
054d5e41f3
feature: warn when creating commit on a detached HEAD ( #1462 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-06-26 10:13:12 +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
af2b644792
code_review: PR #1416
...
- Split `DoubleTapped` into two methods: `CheckoutBranchByDecorator` and `CheckoutBranchByCommit`
- Move `DoubleTappedEvent` from whole ListBox to the row tapped actually
- Do nothing if the decorator double-clicked is HEAD
- Code-style
Signed-off-by: leo <longshuang@msn.cn >
2025-06-19 11:31:04 +08:00
leo
cadcf40d74
feature: support to open selected folder in file manager
...
Signed-off-by: leo <longshuang@msn.cn >
2025-06-19 09:32:27 +08:00
leo
e81674912c
refactor: remove duplicated context menu to ignore untracked files under folder
...
Signed-off-by: leo <longshuang@msn.cn >
2025-06-19 09:12:27 +08:00
leo
6729d4e896
feature: supports to ignore new files in folder from context menu of selected folder node in change tree ( #1432 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-06-18 22:10:23 +08:00
Göran W
28844c59cf
perf: optimize the WorkingCopy.IsChanged() method ( #1418 )
...
* There's no need to populate a Dictionary just to diff the the "old" and "cur" Lists of Changes.
* If the two lists are of equal length and no change has occurred, we can assume that they are also reported in equal sort-order (by git-status).
* Thus, we only need to compare the two items at each successive index.
2025-06-13 19:23:20 +08:00
Nathan Baulch
7bba40d03f
typos: ( #1397 )
2025-06-06 12:10:55 +08:00
Göran W
88c38b4139
enhance: unified all file-path normalization - use char-replace, trim trailing slash
2025-06-05 21:17:18 +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
7b05b011aa
fix: USE THEIRS for AU conflict and USE MINE for UA conflict
...
Signed-off-by: leo <longshuang@msn.cn >
2025-06-02 13:03:38 +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
60cd210b80
fix: using theirs or mine does not work if it is deleted by ours or theirs
...
Signed-off-by: leo <longshuang@msn.cn >
2025-05-30 11:13:29 +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
0641a22230
feature: allow to reset author when --amend is enabled for committing
2025-05-26 12:28:00 +08:00
leo
ef53dd0025
refactor: use a new Models.ChangeState.Conflicted to represent all the unmerged file state ( #1359 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-05-24 20:25:05 +08:00
Göran W
30d4c1008a
enhance: don't show unmerged files in STAGED area ( #1359 )
...
Unmerged files (i.e unresolved conflicts) should only appear in the Unstaged area, and not "duplicated" in the Staged area.
Motivation:
* The user-friendly git-status command does not show these as "Changes to be committed".
* If they appear in the Staged area, they are quite redundant since the Diff view will just show "No changes or only EOL changes".
* Some other Git UIs (like Fork) don't show these as Staged items either.
NOTE: According to docs for the git-status "Short Format" (and --porcelain=v1), the XY fields for Unmerged paths do NOT actually represent the Index & Working-tree states, instead they represent the states introduced by each HEAD in the merge (i.e Ours & Theirs, relative to Base).
2025-05-24 19:42:10 +08:00
Göran W
4363b8b6aa
refactor: add new constant Models.Commit.EmptyTreeSHA1 ( #1360 )
2025-05-24 19:23:28 +08:00
leo
75b7724d44
refactor: implement IDisposable instead of calling custom Cleanup
...
Signed-off-by: leo <longshuang@msn.cn >
2025-05-20 17:24:00 +08:00
leo
825b74c2a3
refactor: use String.AsSpan(int, int) instead of String.AsSpan().Slice(int, int)
...
Signed-off-by: leo <longshuang@msn.cn >
2025-04-29 09:44:06 +08:00
leo
951ea8f088
fix: use subject as context menu item header to fix vertical alignment ( #1251 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-04-27 11:20:44 +08:00
qiufengshe
ea680782fe
perf: minimize temporary strings for better performance ( #1240 )
...
(cherry picked from commit f4dad2bf551ead5640a500297a4a6f408aef1350)
2025-04-23 21:15:58 +08:00
leo
345ad06aba
refactor: diff for staged file with --amend enabled ( #1231 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-04-22 19:20:27 +08:00
leo
78f4809875
fix: no changes were displayed when try to amend a commit without parent (branch first commit) ( #1231 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-04-22 19:04:40 +08:00
leo
87ebe3741d
fix: for init-commit, app will crash with COMMIT & PUSH due to local branch has not been updated ( #1229 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-04-22 18:45:14 +08:00
leo
750ca8ec61
refactor: use custom view locator to create new window/dialog ( #1216 )
...
Signed-off-by: leo <longshuang@msn.cn >
(cherry picked from commit 3e6f2b25f15b263e2b84922abc5cf6d621d62a83)
2025-04-21 15:32:21 +08:00
leo
41416a6bed
refactor: use DataTemplates instead of create NamedHighlightedTextBlock manually for menu item ( #1216 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-04-20 11:05:24 +08:00