Skip to content

Commit 1138ba3

Browse files
committed
Merge branch 'release/2025.11'
2 parents 7581d76 + ae5fa6a commit 1138ba3

26 files changed

+167
-100
lines changed

TRANSLATION.md

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,15 @@ This document shows the translation status of each locale file in the repository
66

77
### ![en_US](https://img.shields.io/badge/en__US-%E2%88%9A-brightgreen)
88

9-
### ![de__DE](https://img.shields.io/badge/de__DE-98.92%25-yellow)
9+
### ![de__DE](https://img.shields.io/badge/de__DE-98.65%25-yellow)
1010

1111
<details>
1212
<summary>Missing keys in de_DE.axaml</summary>
1313

1414
- Text.BranchUpstreamInvalid
1515
- Text.Configure.CustomAction.WaitForExit
16+
- Text.Configure.IssueTracker.AddSampleAzure
17+
- Text.CopyFullPath
1618
- Text.Diff.First
1719
- Text.Diff.Last
1820
- Text.Preferences.AI.Streaming
@@ -27,22 +29,30 @@ This document shows the translation status of each locale file in the repository
2729
<details>
2830
<summary>Missing keys in es_ES.axaml</summary>
2931

30-
- Text.Preferences.General.ShowTagsInGraph
32+
- Text.CopyFullPath
3133

3234
</details>
3335

34-
### ![fr__FR](https://img.shields.io/badge/fr__FR-%E2%88%9A-brightgreen)
36+
### ![fr__FR](https://img.shields.io/badge/fr__FR-99.87%25-yellow)
37+
38+
<details>
39+
<summary>Missing keys in fr_FR.axaml</summary>
40+
41+
- Text.CopyFullPath
42+
43+
</details>
3544

36-
### ![it__IT](https://img.shields.io/badge/it__IT-99.87%25-yellow)
45+
### ![it__IT](https://img.shields.io/badge/it__IT-99.73%25-yellow)
3746

3847
<details>
3948
<summary>Missing keys in it_IT.axaml</summary>
4049

50+
- Text.CopyFullPath
4151
- Text.Preferences.General.ShowTagsInGraph
4252

4353
</details>
4454

45-
### ![pt__BR](https://img.shields.io/badge/pt__BR-91.12%25-yellow)
55+
### ![pt__BR](https://img.shields.io/badge/pt__BR-90.98%25-yellow)
4656

4757
<details>
4858
<summary>Missing keys in pt_BR.axaml</summary>
@@ -65,6 +75,7 @@ This document shows the translation status of each locale file in the repository
6575
- Text.Configure.CustomAction.WaitForExit
6676
- Text.Configure.IssueTracker.AddSampleGiteeIssue
6777
- Text.Configure.IssueTracker.AddSampleGiteePullRequest
78+
- Text.CopyFullPath
6879
- Text.CreateBranch.Name.WarnSpace
6980
- Text.DeleteRepositoryNode.Path
7081
- Text.DeleteRepositoryNode.TipForGroup

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2025.10
1+
2025.11

build/resources/deb/DEBIAN/control

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
Package: sourcegit
2-
Version: 8.23
2+
Version: 2025.10
33
Priority: optional
44
Depends: libx11-6, libice6, libsm6, libicu | libicu76 | libicu74 | libicu72 | libicu71 | libicu70 | libicu69 | libicu68 | libicu67 | libicu66 | libicu65 | libicu63 | libicu60 | libicu57 | libicu55 | libicu52, xdg-utils
55
Architecture: amd64
6+
Installed-Size: 60440
67
Maintainer: [email protected]
78
Description: Open-source & Free Git GUI Client

build/scripts/package.linux.sh

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,15 @@ cp -f SourceGit/* resources/deb/opt/sourcegit
5656
ln -rsf resources/deb/opt/sourcegit/sourcegit resources/deb/usr/bin
5757
cp -r resources/_common/applications resources/deb/usr/share
5858
cp -r resources/_common/icons resources/deb/usr/share
59-
sed -i -e "s/^Version:.*/Version: $VERSION/" -e "s/^Architecture:.*/Architecture: $arch/" resources/deb/DEBIAN/control
60-
dpkg-deb --root-owner-group --build resources/deb "sourcegit_$VERSION-1_$arch.deb"
59+
# Calculate installed size in KB
60+
installed_size=$(du -sk resources/deb | cut -f1)
61+
# Update the control file
62+
sed -i -e "s/^Version:.*/Version: $VERSION/" \
63+
-e "s/^Architecture:.*/Architecture: $arch/" \
64+
-e "s/^Installed-Size:.*/Installed-Size: $installed_size/" \
65+
resources/deb/DEBIAN/control
66+
# Build deb package with gzip compression
67+
dpkg-deb -Zgzip --root-owner-group --build resources/deb "sourcegit_$VERSION-1_$arch.deb"
6168

6269
rpmbuild -bb --target="$target" resources/rpm/SPECS/build.spec --define "_topdir $(pwd)/resources/rpm" --define "_version $VERSION"
6370
mv "resources/rpm/RPMS/$target/sourcegit-$VERSION-1.$target.rpm" ./

src/App.axaml.cs

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ public static void Main(string[] args)
3737

3838
TaskScheduler.UnobservedTaskException += (_, e) =>
3939
{
40-
LogException(e.Exception);
4140
e.SetObserved();
4241
};
4342

@@ -560,8 +559,22 @@ private string FixFontFamilyName(string input)
560559
foreach (var part in parts)
561560
{
562561
var t = part.Trim();
563-
if (!string.IsNullOrEmpty(t))
564-
trimmed.Add(t);
562+
if (string.IsNullOrEmpty(t))
563+
continue;
564+
565+
// Collapse multiple spaces into single space
566+
var prevChar = '\0';
567+
var sb = new StringBuilder();
568+
569+
foreach (var c in t)
570+
{
571+
if (c == ' ' && prevChar == ' ')
572+
continue;
573+
sb.Append(c);
574+
prevChar = c;
575+
}
576+
577+
trimmed.Add(sb.ToString());
565578
}
566579

567580
return trimmed.Count > 0 ? string.Join(',', trimmed) : string.Empty;

src/Commands/Stash.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ public bool Apply(string name, bool restoreIndex)
8282

8383
public bool Pop(string name)
8484
{
85-
Args = $"stash pop -q \"{name}\"";
85+
Args = $"stash pop -q --index \"{name}\"";
8686
return Exec();
8787
}
8888

src/Models/AvatarManager.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using System;
1+
using System;
22
using System.Collections.Generic;
33
using System.Globalization;
44
using System.IO;
@@ -196,8 +196,8 @@ private void LoadDefaultAvatar(string key, string img)
196196
private string GetEmailHash(string email)
197197
{
198198
var lowered = email.ToLower(CultureInfo.CurrentCulture).Trim();
199-
var hash = MD5.Create().ComputeHash(Encoding.Default.GetBytes(lowered));
200-
var builder = new StringBuilder();
199+
var hash = MD5.HashData(Encoding.Default.GetBytes(lowered).AsSpan());
200+
var builder = new StringBuilder(hash.Length * 2);
201201
foreach (var c in hash)
202202
builder.Append(c.ToString("x2"));
203203
return builder.ToString();

src/Native/OS.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,15 @@ public static void OpenWithDefaultEditor(string file)
162162
_backend.OpenWithDefaultEditor(file);
163163
}
164164

165+
public static string GetAbsPath(string root, string sub)
166+
{
167+
var fullpath = Path.Combine(root, sub);
168+
if (OperatingSystem.IsWindows())
169+
return fullpath.Replace('/', '\\');
170+
171+
return fullpath;
172+
}
173+
165174
private static void UpdateGitVersion()
166175
{
167176
if (string.IsNullOrEmpty(_gitExecutable) || !File.Exists(_gitExecutable))

src/Resources/Locales/de_DE.axaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,6 @@
186186
<x:String x:Key="Text.Copy" xml:space="preserve">Kopieren</x:String>
187187
<x:String x:Key="Text.CopyAllText" xml:space="preserve">Kopiere gesamten Text</x:String>
188188
<x:String x:Key="Text.CopyPath" xml:space="preserve">Pfad kopieren</x:String>
189-
<x:String x:Key="Text.CopyFileName" xml:space="preserve">Dateinamen kopieren</x:String>
190189
<x:String x:Key="Text.CreateBranch" xml:space="preserve">Branch erstellen...</x:String>
191190
<x:String x:Key="Text.CreateBranch.BasedOn" xml:space="preserve">Basierend auf:</x:String>
192191
<x:String x:Key="Text.CreateBranch.Checkout" xml:space="preserve">Erstellten Branch auschecken</x:String>
@@ -650,7 +649,6 @@
650649
<x:String x:Key="Text.Stash.Title" xml:space="preserve">Lokale Änderungen stashen</x:String>
651650
<x:String x:Key="Text.StashCM.Apply" xml:space="preserve">Anwenden</x:String>
652651
<x:String x:Key="Text.StashCM.Drop" xml:space="preserve">Entfernen</x:String>
653-
<x:String x:Key="Text.StashCM.Pop" xml:space="preserve">Anwenden und entfernen</x:String>
654652
<x:String x:Key="Text.StashDropConfirm" xml:space="preserve">Stash entfernen</x:String>
655653
<x:String x:Key="Text.StashDropConfirm.Label" xml:space="preserve">Entfernen:</x:String>
656654
<x:String x:Key="Text.Stashes" xml:space="preserve">Stashes</x:String>

src/Resources/Locales/en_US.axaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,7 @@
160160
<x:String x:Key="Text.Configure.IssueTracker.AddSampleGitLabIssue" xml:space="preserve">Add Sample GitLab Issue Rule</x:String>
161161
<x:String x:Key="Text.Configure.IssueTracker.AddSampleGitLabMergeRequest" xml:space="preserve">Add Sample GitLab Merge Request Rule</x:String>
162162
<x:String x:Key="Text.Configure.IssueTracker.AddSampleJira" xml:space="preserve">Add Sample Jira Rule</x:String>
163+
<x:String x:Key="Text.Configure.IssueTracker.AddSampleAzure" xml:space="preserve">Add Sample Azure DevOps Rule</x:String>
163164
<x:String x:Key="Text.Configure.IssueTracker.NewRule" xml:space="preserve">New Rule</x:String>
164165
<x:String x:Key="Text.Configure.IssueTracker.Regex" xml:space="preserve">Issue Regex Expression:</x:String>
165166
<x:String x:Key="Text.Configure.IssueTracker.RuleName" xml:space="preserve">Rule Name:</x:String>
@@ -185,7 +186,7 @@
185186
<x:String x:Key="Text.Copy" xml:space="preserve">Copy</x:String>
186187
<x:String x:Key="Text.CopyAllText" xml:space="preserve">Copy All Text</x:String>
187188
<x:String x:Key="Text.CopyPath" xml:space="preserve">Copy Path</x:String>
188-
<x:String x:Key="Text.CopyFileName" xml:space="preserve">Copy File Name</x:String>
189+
<x:String x:Key="Text.CopyFullPath" xml:space="preserve">Copy Full Path</x:String>
189190
<x:String x:Key="Text.CreateBranch" xml:space="preserve">Create Branch...</x:String>
190191
<x:String x:Key="Text.CreateBranch.BasedOn" xml:space="preserve">Based On:</x:String>
191192
<x:String x:Key="Text.CreateBranch.Checkout" xml:space="preserve">Check out the created branch</x:String>
@@ -654,7 +655,6 @@
654655
<x:String x:Key="Text.Stash.Title" xml:space="preserve">Stash Local Changes</x:String>
655656
<x:String x:Key="Text.StashCM.Apply" xml:space="preserve">Apply</x:String>
656657
<x:String x:Key="Text.StashCM.Drop" xml:space="preserve">Drop</x:String>
657-
<x:String x:Key="Text.StashCM.Pop" xml:space="preserve">Pop</x:String>
658658
<x:String x:Key="Text.StashCM.SaveAsPatch" xml:space="preserve">Save as Patch...</x:String>
659659
<x:String x:Key="Text.StashDropConfirm" xml:space="preserve">Drop Stash</x:String>
660660
<x:String x:Key="Text.StashDropConfirm.Label" xml:space="preserve">Drop:</x:String>

0 commit comments

Comments
 (0)