Skip to content

Commit ea68078

Browse files
qiufengshelove-linger
authored andcommitted
perf: minimize temporary strings for better performance (#1240)
(cherry picked from commit f4dad2b)
1 parent 7e282b1 commit ea68078

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/ViewModels/WorkingCopy.cs

Lines changed: 7 additions & 7 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.IO;
44
using System.Threading.Tasks;
@@ -635,7 +635,7 @@ public ContextMenu CreateContextMenuForUnstagedChanges()
635635
}
636636
else if (_inProgressContext is RevertInProgress revert)
637637
{
638-
useTheirs.Header = App.Text("FileCM.ResolveUsing", revert.Head.SHA.Substring(0, 10) + " (revert)");
638+
useTheirs.Header = App.Text("FileCM.ResolveUsing", $"{revert.Head.SHA.AsSpan().Slice(0, 10)} (revert)");
639639
useMine.Header = App.Text("FileCM.ResolveUsing", _repo.CurrentBranch.Name);
640640
}
641641
else if (_inProgressContext is MergeInProgress merge)
@@ -771,7 +771,7 @@ public ContextMenu CreateContextMenuForUnstagedChanges()
771771
byExtension.Header = App.Text("WorkingCopy.AddToGitIgnore.Extension", extension);
772772
byExtension.Click += (_, e) =>
773773
{
774-
Commands.GitIgnore.Add(_repo.FullPath, "*" + extension);
774+
Commands.GitIgnore.Add(_repo.FullPath, $"*{extension}");
775775
e.Handled = true;
776776
};
777777
addToIgnore.Items.Add(byExtension);
@@ -782,7 +782,7 @@ public ContextMenu CreateContextMenuForUnstagedChanges()
782782
byExtensionInSameFolder.Click += (_, e) =>
783783
{
784784
var dir = Path.GetDirectoryName(change.Path).Replace("\\", "/");
785-
Commands.GitIgnore.Add(_repo.FullPath, dir + "/*" + extension);
785+
Commands.GitIgnore.Add(_repo.FullPath, $"{dir}/*{extension}");
786786
e.Handled = true;
787787
};
788788
addToIgnore.Items.Add(byExtensionInSameFolder);
@@ -824,7 +824,7 @@ public ContextMenu CreateContextMenuForUnstagedChanges()
824824
lfsTrackByExtension.Click += async (_, e) =>
825825
{
826826
var log = _repo.CreateLog("Track LFS");
827-
var succ = await Task.Run(() => new Commands.LFS(_repo.FullPath).Track("*" + extension, false, log));
827+
var succ = await Task.Run(() => new Commands.LFS(_repo.FullPath).Track($"*{extension}", false, log));
828828
if (succ)
829829
App.SendNotification(_repo.FullPath, $"Tracking all *{extension} files successfully!");
830830

@@ -993,7 +993,7 @@ public ContextMenu CreateContextMenuForUnstagedChanges()
993993
}
994994
else if (_inProgressContext is RevertInProgress revert)
995995
{
996-
useTheirs.Header = App.Text("FileCM.ResolveUsing", revert.Head.SHA.Substring(0, 10) + " (revert)");
996+
useTheirs.Header = App.Text("FileCM.ResolveUsing", $"{revert.Head.SHA.AsSpan().Slice(0, 10)} (revert)");
997997
useMine.Header = App.Text("FileCM.ResolveUsing", _repo.CurrentBranch.Name);
998998
}
999999
else if (_inProgressContext is MergeInProgress merge)
@@ -1417,7 +1417,7 @@ public ContextMenu CreateContextMenuForCommitMessages()
14171417
var home = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
14181418
var prefixLen = home.EndsWith('/') ? home.Length - 1 : home.Length;
14191419
if (gitTemplate.StartsWith(home, StringComparison.Ordinal))
1420-
friendlyName = "~" + gitTemplate.Substring(prefixLen);
1420+
friendlyName = $"~{gitTemplate.AsSpan().Slice(prefixLen)}";
14211421
}
14221422

14231423
var gitTemplateItem = new MenuItem();

0 commit comments

Comments
 (0)