leo
82cedf858e
feature: supports to exclude modifed/deleted files while discarding local changes ( #2226 )
...
Signed-off-by: leo <longshuang@msn.cn >
2026-03-30 11:26:00 +08:00
leo
5f520932a2
ux: hide the row to deal with uncommitted local changes when there are no local changes
...
Signed-off-by: leo <longshuang@msn.cn >
2026-03-23 14:26:42 +08:00
leo
0b15451916
feature: add Do Nothing option back to all git checkout command ( #2204 )
...
Signed-off-by: leo <longshuang@msn.cn >
2026-03-23 12:17:24 +08:00
leo
62d2908a79
refactor!: split repository settings into two parts - shared settings and ui states ( #2071 )
...
- All the attributes that can be changed from `Repository Configuration` window are `shared settings`, and will be shared (also synced) between worktrees
- The other UI states, such as current history filters, branch/tag sort methods, tree states etc., will be saved into each worktree's real git dir. And those states will not be synced between each others.
BREAKING CHANGE: Users will lost their old UI states. But the shared settings remains.
2026-02-03 18:59:29 +08:00
leo
ea1159cf20
code_style: rename TryAutoUpdateSubmodules to AutoUpdateSubmodulesAsync
...
Signed-off-by: leo <longshuang@msn.cn >
2026-01-14 16:16:40 +08:00
leo
3c9a7920a3
feature: add a repository configuration - Ask before auto-updating submodules (default false) ( #2045 )
...
Signed-off-by: leo <longshuang@msn.cn >
2026-01-14 11:58:44 +08:00
leo
3ee3c4e021
refactor: --recursive will always be enabled while initializing or updating submodules
...
Signed-off-by: leo <longshuang@msn.cn >
2026-01-13 15:40:53 +08:00
leo
7bed988f59
refactor: do not stash untracked changes while doing checkout/create branch/pull with Stash & Reapply ( #2016 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-12-29 12:58:16 +08:00
leo
79feb442ee
refactor: auto update submodules (only initialized) after checkout/create branch/merge/pull
...
Signed-off-by: leo <longshuang@msn.cn >
2025-12-24 16:15:48 +08:00
leo
d9dd2c188d
enhance: do not init submodules after merge/pull (only update initialized submodules)
...
Signed-off-by: leo <longshuang@msn.cn >
2025-12-23 16:41:27 +08:00
leo
20ff55fc03
feature: show repo status in Welcome page ( #1867 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-10-22 15:47:53 +08:00
leo
3b9ac376f0
optimize: only navigate to new commit if it is necessary
...
Signed-off-by: leo <longshuang@msn.cn >
2025-10-14 20:11:18 +08:00
leo
cd80a55629
refactor: file-system watcher
...
- Use `System.Threading.Interlocked` to read/write data
- Use `SourceGit.Models.Watcher.LockContext` to release watcher's lock
- New way to detect file changes in submodules
- Manually update stashes after `git stash` command complete (#1760 )
Signed-off-by: leo <longshuang@msn.cn >
2025-09-01 17:39:07 +08:00
leo
4c4af6ef68
feature: supports to discard all local changes without untracked files ( #1586 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-07-16 15:37:11 +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
Nathan Baulch
ec17ea9901
code_style: general cleanup ( #1497 )
2025-07-03 10:32:03 +08:00
Nathan Baulch
d404f6dbe2
code_style: general cleanup ( #1428 )
2025-06-18 09:29:18 +08:00
leo
7e2f3bec8c
enhance: clear commit message before merging/cherry-picking/rebasing/reverting to allow SourceGit read it from git ( #1414 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-06-12 10:39:52 +08:00
leo
c112549b69
refactor: query branch head after operation finished to avoid branch head mismatch
...
Signed-off-by: leo <longshuang@msn.cn >
2025-05-23 09:40:15 +08:00
leo
1fef7a7baa
perf: only update uninited or outdated submodules
...
Signed-off-by: leo <longshuang@msn.cn >
2025-05-21 17:51:00 +08:00
leo
09d0122e26
refactor: rewrite git pull command
...
If we do not provide pulling remote branch, it will auto fetch all branches first.
Signed-off-by: leo <longshuang@msn.cn >
2025-05-21 17:18:25 +08:00
leo
936160ea5c
feature: supports --recurse-submodules on pull ( #1342 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-05-21 16:54:23 +08:00
leo
5fd074a9b6
refactor: use view locator instead of creating views manually in viewmodels ( #1213 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-04-19 11:14:19 +08:00
leo
8b39df32cc
feature: git command logs
...
Signed-off-by: leo <longshuang@msn.cn >
2025-04-17 13:23:56 +08:00
leo
0cb2ca78fe
code_review: PR #1180
...
- replace `SetNeedNavigateToUpstreamHead` with `NavigateToBranchDelayed`
- navigate to current HEAD instead of original source HEAD after merge
Signed-off-by: leo <longshuang@msn.cn >
2025-04-14 11:35:50 +08:00
Gadfly
17cf402c78
enhance: navigate to upstream head after fetch, pull, and merge ( #1180 )
2025-04-14 10:42:34 +08:00
leo
0e261cffd2
refactor: rewrite the way to deal with uncommitted local changes when checkout/pull/create branch ( #1085 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-03-13 10:21:54 +08:00
GadflyFang
68e96f428e
fix: validate result not update #1052 ( #1053 )
2025-03-04 16:34:51 +08:00
leo
5199fb2b74
enhance: do NOT remember the last selected handling method of uncommitted local changes ( #977 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-02-28 22:14:21 +08:00
leo
fa07bb5b5a
refactor: move per-repository config Enable --prune on fetch to global git config fetch.prune ( #908 )
...
Signed-off-by: leo <longshuang@msn.cn >
2025-01-25 12:06:48 +08:00
leo
94daa46db9
code_review: PR #793
...
* do NOT modify the existing merge, and add a new constructor for `Commands.Merge` instead
* rewrite `ViewModels.MergeMultiple`
- since `_histories.Commits.Find` may returns null, use `List<object>` instead of `List<Models.Commits>`
- supports display merge target as both `Models.Commit` and `Models.Branch`
* rename translation key `Text.MergeMultiple.Commit` to `Text.MergeMultiple.Targets`, and add translations for zh_CN and zh_TW
* some UI/UX changes
2024-12-09 21:12:58 +08:00
Dmitrij D. Czarkoff
dce33fdf60
feature: merge multiple heads ( #793 )
...
* feature: allow merging multiple heads
* feature: allow merging multiple branches from branch tree
2024-12-09 21:04:25 +08:00
leo
153a1f30b2
feature: supports toggle --force option for git fetch command ( #721 )
...
* Background auto fetch will always disable this option
* This option is not add to pull operation
Signed-off-by: leo <longshuang@msn.cn >
2024-11-22 09:39:50 +08:00
leo
3cbffa6ff9
feature: add an option in repository configuration to enable --prune on fetch ( #590 )
...
Signed-off-by: leo <longshuang@msn.cn >
2024-10-30 18:39:38 +08:00
yindf
2d7ea561e2
fix bug that stuck auto fetch when pull failed & make stage area resizeable ( #627 )
...
* fix watcher stuck by pull
* make stage area resizeable
---------
Co-authored-by: yindf <yindf@mail.jj.cn >
(cherry picked from commit a842aca042a73cb5fa3995794aae2a2e3540b37f)
2024-10-30 17:59:59 +08:00
leo
b9d7f908c9
refactor: do NOT use the --prune parameter for git fetch command ( #590 )
2024-10-22 16:54:21 +08:00
leo
4e57cd50cd
feature: add an option to clean up ignored files when discard all changes in repo ( #531 )
2024-10-02 21:46:48 +08:00
leo
a59600ce18
enhance: supports default remote in Pull if current branch has no upstream ( #534 )
2024-10-02 15:27:09 +08:00
leo
1ba294a07b
refactor: move auto-fetch from global preference to repository settings
2024-09-26 10:50:21 +08:00
leo
1ec5cc416d
enhance: leave remote branch to empty when the local branch tracks no branch in the remote while pulling changes ( #469 )
2024-09-13 17:29:24 +08:00
leo
3a54471ea5
refactor: rewrite branch auto-select after remote changed while pulling ( #342 )
2024-08-09 14:08:25 +08:00
leo
f98423b4c7
enhance: auto-select branch after remote changed while pulling ( #342 )
2024-08-09 14:03:31 +08:00
leo
3bcf4e128e
enhance: get count of changed file (without untracked) directly ( #316 )
2024-08-07 15:52:58 +08:00
leo
8c16ded6bd
enhance: ignore untracked files when calculate local changes in checkout/create branch/pull ( #316 )
2024-08-07 15:38:18 +08:00
leo
71c2ad989b
enhance: do not call git add before git stash push when enable auto stash in checkout/create branch/pull ( #316 )
2024-08-07 15:20:21 +08:00
leo
ec6fe25e87
code_style: run dotnet format
2024-07-31 16:26:58 +08:00
leo
4612cecf10
code_review: PR ( #288 )
...
* add missing translations and it's no need to add `OnPull` suffix since it already has a prefix `Text.Pull.`
* when enable fetching all branches of selected remote, use merge/rebase command instead of pull
* re-arrange orders of options in pull popup panel
* default enable `Fetch all branches`
2024-07-27 20:35:19 +08:00
RevenantX
8a38b6afac
Add fetch all branches on pull. (acts like fetch+pull)
2024-07-27 12:52:01 +03:00