From 0ae39faad1c154c4bb80c5564270e0bcc0716957 Mon Sep 17 00:00:00 2001 From: leo Date: Fri, 23 May 2025 10:05:09 +0800 Subject: [PATCH] enhance: do not show `hint:` messages in error popup, but leave it in git command logs (#1348) Signed-off-by: leo --- src/Commands/Command.cs | 39 +++++++++++++++++---------------------- 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/src/Commands/Command.cs b/src/Commands/Command.cs index 699cc120..2b5a89e4 100644 --- a/src/Commands/Command.cs +++ b/src/Commands/Command.cs @@ -44,35 +44,30 @@ namespace SourceGit.Commands proc.OutputDataReceived += (_, e) => { - if (e.Data == null) - return; - - Log?.AppendLine(e.Data); + if (e.Data is { } line) + Log?.AppendLine(line); }; proc.ErrorDataReceived += (_, e) => { - if (string.IsNullOrEmpty(e.Data)) + var line = e.Data ?? string.Empty; + Log?.AppendLine(line); + + // Lines to hide in error message. + if (line.Length > 0) { - errs.Add(string.Empty); - return; + if (line.StartsWith("remote: Enumerating objects:", StringComparison.Ordinal) || + line.StartsWith("remote: Counting objects:", StringComparison.Ordinal) || + line.StartsWith("remote: Compressing objects:", StringComparison.Ordinal) || + line.StartsWith("Filtering content:", StringComparison.Ordinal) || + line.StartsWith("hint: ", StringComparison.Ordinal)) + return; + + if (REG_PROGRESS().IsMatch(line)) + return; } - Log?.AppendLine(e.Data); - - // Ignore progress messages - if (e.Data.StartsWith("remote: Enumerating objects:", StringComparison.Ordinal)) - return; - if (e.Data.StartsWith("remote: Counting objects:", StringComparison.Ordinal)) - return; - if (e.Data.StartsWith("remote: Compressing objects:", StringComparison.Ordinal)) - return; - if (e.Data.StartsWith("Filtering content:", StringComparison.Ordinal)) - return; - if (REG_PROGRESS().IsMatch(e.Data)) - return; - - errs.Add(e.Data); + errs.Add(line); }; var dummy = null as Process;