Commit Graph

4763 Commits

Author SHA1 Message Date
leo
e30ed896e2 refactor: use git reset HEAD --pathspec-from-file=<pathspec> instead of git restore --staged --pathspec-from-file=<pathspec> to unstage files
Signed-off-by: leo <longshuang@msn.cn>
2025-12-26 16:57:42 +08:00
leo
974c30b39c ux: tooltip icon position
Signed-off-by: leo <longshuang@msn.cn>
2025-12-26 11:07:56 +08:00
leo
11351af672 ux: commit ref custom renderer
Signed-off-by: leo <longshuang@msn.cn>
2025-12-26 10:52:26 +08:00
ybeapps
27289eb901 doc: simplify Homebrew installation instructions (#2007)
Removed brew tap requirement as SourceGit is now available in the official Homebrew Cask repository. 🎉🎉🎉🎉🎉🎉🎉🎉🎉
2025-12-26 10:19:58 +08:00
leo
fdaf96029d ux: use transparent tab separator pen
Signed-off-by: leo <longshuang@msn.cn>
2025-12-25 17:25:35 +08:00
leo
823949aff2 ux: fix tab border blur (anti-aliased)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-25 15:52:29 +08:00
github-actions[bot]
ab51702b62 doc: Update translation status and sort locale files 2025-12-25 02:33:55 +00:00
Javier J. Martínez M.
29690c7fba localization: update Spanish translation (#2006)
- Add missing strings.
2025-12-25 10:33:43 +08:00
leo
5b8258c64e code_style: tab renderer
Signed-off-by: leo <longshuang@msn.cn>
2025-12-24 19:02:21 +08:00
github-actions[bot]
742e76d26a doc: Update translation status and sort locale files 2025-12-24 08:16:11 +00: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
83be4bd96a enhance: refresh submodules manually after update/de-init submodule
Signed-off-by: leo <longshuang@msn.cn>
2025-12-24 15:28:09 +08:00
leo
a570951b7f code_style: remove unused code
Signed-off-by: leo <longshuang@msn.cn>
2025-12-23 18:40:34 +08:00
leo
4a830bae6f ux: set icon foreground manually since the button is disabled
Signed-off-by: leo <longshuang@msn.cn>
2025-12-23 18:19:19 +08:00
leo
d098f4e49f ux: toolbar buttons in commit message edit box (#2003)
- Change button's `Width` from 24px to 28px
- Disable button while its context menu is opening

Signed-off-by: leo <longshuang@msn.cn>
2025-12-23 18:05:16 +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
6b274ad1b8 ux: content background in flyout
Signed-off-by: leo <longshuang@msn.cn>
2025-12-23 16:18:12 +08:00
leo
8c772f282d enhance: stage/unstage operation
- Do not use `add .` since it may run very slowly
- Rename `UnstageChangesForAmend` command to `UpdateIndexInfo` and force using UTF-8 (without BOM) encoding for inputs
- Remove unused commands

Signed-off-by: leo <longshuang@msn.cn>
2025-12-23 10:12:55 +08:00
leo
4692df985f feature: show total changes in revision compare and branch compare
Signed-off-by: leo <longshuang@msn.cn>
2025-12-22 12:02:26 +08:00
leo
eef1dcccbf fix: crash while reading JetBrains Toolbox's state.json (#1999)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-22 10:39:55 +08:00
github-actions[bot]
50f8e0c796 doc: Update translation status and sort locale files 2025-12-21 02:02:21 +00:00
AquariusStar
a3fbe09b8d localization: update Russian translate (#1997) 2025-12-21 10:02:09 +08:00
leo
9b87f7b819 enhance: starts filesystem watcher in another thread to avoid UI blocking (#1992)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-20 12:00:22 +08:00
leo
a1ff375242 ux: do not show repository's path in window title (#1993)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-20 11:46:44 +08:00
Sina Hinderks
b84b79322f fix: stage/discard/unstage hunk (#1996)
There is a regression bug regarding staging, discarding, and unstaging
hunks.  Depending on the data, these actions may be ignored or only
partially executed.

The following script generates a repository in the current directory
(named after the current directory) with four examples.  Save the script
as `create-hunk-regression.sh`, make it executable with `chmod +x
create-hunk-regression.sh`, and start it with
`./create-hunk-regression.sh`.  (Tested on Linux, should also work on
Windows.)

```bash
#!/usr/bin/env bash

set -e

dir=$(basename $(pwd))

rm -rf "$dir"
git init -b main "$dir" && cd "$dir"

echo -n '1n2n3n4n' | tr 'rn' '\r\n' > cannot-stage-hunks.txt
echo -n '2rn3rn' | tr 'rn' '\r\n' > partially-stages-hunks.txt
echo -n 'test1rnrnrnrntest3rn' | tr 'rn' '\r\n' > partially-stages-or-discards-hunk.txt

echo -n '1rn2rn3rn4rn' | tr 'rn' '\r\n' > cannot-unstage-hunks.txt

git add .
git commit -m 'initial commit'

echo -n '1rn2n3n4rn' | tr 'rn' '\r\n' > cannot-stage-hunks.txt
echo -n '1rn2rn3rn4rn' | tr 'rn' '\r\n' > partially-stages-hunks.txt
echo -n 'test1rnrntest2rnrntest3rn' | tr 'rn' '\r\n' > partially-stages-or-discards-hunk.txt

echo -n '1n2rn3rn4n' | tr 'rn' '\r\n' > cannot-unstage-hunks.txt

git add cannot-unstage-hunks.txt
```

For the examples to fully work you should configure Git/SourceGit the
following way:

  - set `core.autocrlf` to `false`
  - do not enable `--ignore-cr-at-eol` in diff
  - do not ignore wwhitespace changes

This regression was introduced in commit 5c9d96, where breaking up the
diff into lines was changed from explicitly doing it to using the stream
function `ReadLineAsync`.  Whereas the explicit code handled CR and LF
correctly, the stream function handles CR, CR/LF and LF the same way, so
that for Windows newlines (CR/LF) the CR will be lost.

The fix for this regression is going back to the explicit code and
ignoring `ReadLineAsync` for reading diffs.

This should fix at least partially issues #1950 and #1995.
2025-12-20 11:38:06 +08:00
leo
553b157deb code_style: remove Rider warnings
Signed-off-by: leo <longshuang@msn.cn>
2025-12-20 11:35:14 +08:00
cdammanintopix
5f2984f983 fix: crash when the pre-push hook is a broken symlink (#1991) 2025-12-19 18:28:08 +08:00
leo
44fc98c070 feature: auto-detect HTTPS website for git@<host>:<repo> formatted remote (#1636)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-19 18:16:29 +08:00
leo
9ac6afac05 fix: launche's title does not update when last active page is the first one
Signed-off-by: leo <longshuang@msn.cn>
2025-12-19 11:45:58 +08:00
leo
b7bd3e6653 ux: apply workspace color to Move to Workspace context menu entry in launcher's tab
Signed-off-by: leo <longshuang@msn.cn>
2025-12-19 11:36:23 +08:00
leo
02606723b4 enhance: auto-fetching will respect git configuration (#1990)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-19 10:40:31 +08:00
leo
910431ab40 enhance: do not refresh commit details if the new selected commit points to the same revision with old one (#1989)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-19 10:27:42 +08:00
leo
0e08d8ef0b project: upgrade AvaloniaUI to 11.3.10
Signed-off-by: leo <longshuang@msn.cn>
2025-12-19 10:22:54 +08:00
leo
a6a0c3b753 ux: layout change for Welcome page
Signed-off-by: leo <longshuang@msn.cn>
2025-12-18 15:41:08 +08:00
leo
e5788d0957 fix: column headers mis-aligned with rows
Signed-off-by: leo <longshuang@msn.cn>
2025-12-18 15:34:07 +08:00
leo
addafd5ffb ux: commit list in HISTORY page will always turn AllowAutoHide off (#1980) (#1794)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-18 14:59:14 +08:00
leo
f7836c0593 ux: prevent non-auto-hide scrollbar overlap contents (#1980) (#1794)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-18 14:03:34 +08:00
leo
cf528d6b96 doc: update README.md for macOS users (#1988)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-18 10:40:17 +08:00
ybeapps
2c968e4ca4 doc: update README.md - Mac app is signed now via homebrew (#1985) 2025-12-17 17:02:18 +08:00
leo
503ac5b42c refactor: use EndsWith instead of Equals to auto-find the tracking branch while creating worktree (#1983)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-17 10:47:04 +08:00
leo
9f9b8f30c3 enhance: auto select tracking branch after Tracking remote branch option is toggled while creating worktree (#1983)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-17 10:38:11 +08:00
leo
2e20b0e328 enhance: when a private key is given, do not read default ssh configuration
Signed-off-by: leo <longshuang@msn.cn>
2025-12-16 17:28:22 +08:00
leo
99c7e384b5 refactor: rework Merge popup (#1973)
- Hide `Customize merge message` option when selected `Squash` or `Don't commit` mode.
- Read `$GIT_DIR/SQUASH_MSG` after merging with `Squash` mode
- Clear commit message after discarding all changes
- Cleanup code

Signed-off-by: leo <longshuang@msn.cn>
2025-12-15 14:39:45 +08:00
leo
76e3df6d8d fix: wrong diff arguments for xcode FileMerge (#1979)
Signed-off-by: leo <longshuang@msn.cn>
2025-12-15 12:33:00 +08:00
leo
5ef607244a feature: supports R16F and R32F dds image
Signed-off-by: leo <longshuang@msn.cn>
2025-12-15 11:54:17 +08:00
leo
ee70be41a8 project: Update third-party dependencies
- Upgrade `OpenAI` to `2.8.0`
- Upgrade `Azure.AI.OpenAI` to `2.8.0-beta.1`
- Upgrade `Pfim`  to `0.11.4`

Signed-off-by: leo <longshuang@msn.cn>
2025-12-15 11:42:08 +08:00
leo
083f2cbaf0 Merge branch 'master' into develop 2025-12-15 10:26:51 +08:00
leo
12cd9dd648 Merge branch 'release/v2025.40' v2025.40 2025-12-15 10:26:02 +08:00
leo
f78b8c8575 version: Release 2025.40
Signed-off-by: leo <longshuang@msn.cn>
2025-12-15 10:25:50 +08:00
github-actions[bot]
df096b2666 doc: Update translation status and sort locale files 2025-12-14 11:02:50 +00:00