threads / patch / 13601

patchFix prepare-commit-msg hook and replace in-place sed

Subject: [PATCH] Fix prepare-commit-msg hook and replace in-place sed

## tl;dr

One message between May 21, 2008 and May 21, 2008. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Marcel Koeppen· May 21, 2008, 16:25 UTC · lore

The patterns to the case statement could never be matched, so the hook was a noop. This patch also replaces the non-portable use of in-place sed.

Signed-off-by: Marcel Koeppen <git-dev@marzelpan.de>
---
 templates/hooks--prepare-commit-msg |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
Show changes to templates/hooks--prepare-commit-msg +4 −4
diff --git a/templates/hooks--prepare-commit-msg b/templates/hooks--prepare-commit-msg
index ff0f42a..d3c1da3 100644
--- a/templates/hooks--prepare-commit-msg
+++ b/templates/hooks--prepare-commit-msg
@@ -20,11 +20,11 @@
 # The third example adds a Signed-off-by line to the message, that can
 # still be edited.  This is rarely a good idea.
 
-case "$2 $3" in
-  merge)
-    sed -i '/^Conflicts:/,/#/!b;s/^/# &/;s/^# #/#/' "$1" ;;
+case "$2,$3" in
+  merge,)
+    perl -i -ne 's/^/# /, s/^# #/#/ if /^Conflicts/ .. /#/; print' "$1" ;;
 
-# ""|template)
+# ,|template,)
 #   perl -i -pe '
 #      print "\n" . `git diff --cached --name-status -r`
 #	 if /^#/ && $first++ == 0' "$1" ;;
-- 
1.5.5.1.316.g377d9

← back to recent threads