]> git.ipfire.org Git - thirdparty/git.git/commitdiff
git-gui: strip commit messages less aggressively
authorOswald Buddenhagen <oswald.buddenhagen@gmx.de>
Tue, 13 Aug 2024 09:06:31 +0000 (11:06 +0200)
committerJohannes Sixt <j6t@kdbg.org>
Thu, 15 Aug 2024 14:10:23 +0000 (16:10 +0200)
We would strip all leading and trailing whitespace, which git commit
does not. Let's be consistent here.

Signed-off-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
lib/commit.tcl

index f00a634624294273917ae92a229d4e75bb065408..208dc2817ca68c89a0e66464e40e01e007df99bd 100644 (file)
@@ -207,12 +207,17 @@ You must stage at least 1 file before you can commit.
 
        # -- A message is required.
        #
-       set msg [string trim [$ui_comm get 1.0 end]]
+       set msg [$ui_comm get 1.0 end]
+       # Strip trailing whitespace
        regsub -all -line {[ \t\r]+$} $msg {} msg
        # Strip comment lines
        regsub -all {(^|\n)#[^\n]*} $msg {\1} msg
+       # Strip leading empty lines
+       regsub {^\n*} $msg {} msg
        # Compress consecutive empty lines
        regsub -all {\n{3,}} $msg "\n\n" msg
+       # Strip trailing empty line
+       regsub {\n\n$} $msg "\n" msg
        if {$msg eq {}} {
                error_popup [mc "Please supply a commit message.